This repository provides a quickstart deployment of the Langflow project on Azure using Docker containers with Bicep templates. With a single click, you can deploy Langflow to Azure App Service.
- Automated deployment of Langflow on Azure App Service using Docker
- Python 3.10 environment
- Integration with Application Insights for monitoring
- Custom configuration to expose port 7860 internally and 443 externally
- Azure Subscription
- GitHub account
- Azure CLI installed
- Bicep CLI installed
-
Create the Resource Group:
az group create --name <YourResourceGroup> --location <location>
Replace
<YourResourceGroup>
with the desired name for your Resource Group and<location>
with the desired Azure region (e.g.,EastUS
,WestUS
,NorthEurope
, etc.). -
Click the button below to deploy Langflow to Azure:
-
Follow the instructions in the Azure portal to complete the deployment.
Attention: The first deployment may take several minutes to complete. Please wait until the deployment process is finalized. Once completed, open the default domain provided on the Overview screen of the Web App to access Langflow.
Here are the different performance plans you can choose for your deployment:
Characteristic | Free (F1) | Standard (S1) | Premium (P1v2) | Premium (P2v2) |
---|---|---|---|---|
CPU | Shared | 1 dedicated core | 1 dedicated core | 2 dedicated cores |
Memory | Very limited | 1.75 GB | 3.5 GB | 7 GB |
Runtime | Limited | Unlimited | Unlimited | Unlimited |
SSL/HTTPS | Limited | Full | Full | Full |
Storage | Limited, no persistence | 50 GB | 250 GB | 250 GB |
Scalability | No | Up to 10 instances | Up to 30 instances | Up to 30 instances |
Deployment Slots | No | 5 slots | 20 slots | 20 slots |
Automatic Backups | No | Yes | Yes | Yes |
Advanced Monitoring | No | Yes (with Application Insights) | Yes (with Application Insights) | Yes (with Application Insights) |
Virtual Network | No | Yes | Yes | Yes |
Here are the configuration parameters for the different plans:
Plan | SKU | SKU Code | Worker Size |
---|---|---|---|
Free | Free | F1 | 0 |
Standard | Standard | S1 | 1 |
Premium (P1v2) | PremiumV2 | P1v2 | 1 |
Premium (P2v2) | PremiumV2 | P2v2 | 2 |
If you need to customize the deployment, you can modify the azure-deploy.bicep
file as needed. For example, to use the Premium (P1v2) plan, set the variables as follows:
var sku = 'PremiumV2'
var skuCode = 'P1v2'
var workerSize = 1
To deploy the template using the Azure CLI, follow these steps:
-
Compile the Bicep file to an ARM template:
bicep build azure-deploy.bicep
This will generate an
azure-deploy.json
file. -
Deploy the compiled ARM template:
az deployment group create --resource-group <YourResourceGroup> --template-file azure-deploy.json
Replace
<YourResourceGroup>
with the name of your Azure Resource Group.
Contributions are welcome! Please fork the repository and submit a pull request.
This project is licensed under the MIT License.