[] Change variables in var.tf [] Change all passwords [] Delete folders - .terraform - .terraform.lock.hcl - terraform.tfstate
az login az account set --subscription 76958d76-d94f-402b-a86b-fc6a720a2ba8
az provider register --namespace Microsoft.App az provider show --namespace Microsoft.App
terraform init terraform plan terraform apply
az keyvault certificate create --vault-name --name --policy "$(az keyvault certificate get-default-policy)"
az keyvault secret download --vault-name --name --file <output-file.pfx> --encoding base64
openssl pkcs12 -in output-file.pfx -nocerts -out private-key.pem -nodes openssl pkcs12 -in output-file.pfx -nokeys -out certificate.pem
cat private-key.pem certificate.pem > combined.pem
openssl pkcs12 -export -in combined.pem -out new-output-file.pfx -password pass:Test0001
Deploy langgenius/dify, an LLM based chat bot app on Azure with terraform.
Front-end access:
- nginx -> Azure Container Apps (Serverless)
Back-end components:
- web -> Azure Container Apps (Serverless)
- api -> Azure Container Apps (Serverless)
- worker -> Azure Container Apps (minimum of 1 instance)
- sandbox -> Azure Container Apps (Serverless)
- ssrf_proxy -> Azure Container Apps (Serverless)
- db -> Azure Database for PostgreSQL
- vectordb -> Azure Database for PostgreSQL
- redis -> Azure Cache for Redis
Before you provision Dify, please check and set the variables in var.tf file.
This document provides detailed descriptions of the variables used in the Terraform configuration for setting up the Dify environment.
- Variable Name:
subscription-id
- Type:
string
- Default Value:
0000000000000
- Variable Name:
region
- Type:
string
- Default Value:
japaneast
- Variable Name:
ip-prefix
- Type:
string
- Default Value:
10.99
- Variable Name:
storage-account
- Type:
string
- Default Value:
acadifytest
- Variable Name:
storage-account-container
- Type:
string
- Default Value:
dfy
- Variable Name:
redis
- Type:
string
- Default Value:
acadifyredis
- Variable Name:
psql-flexible
- Type:
string
- Default Value:
acadifypsql
- Variable Name:
pgsql-user
- Type:
string
- Default Value:
user
- Variable Name:
pgsql-password
- Type:
string
- Default Value:
#QWEASDasdqwe
- Variable Name:
aca-env
- Type:
string
- Default Value:
dify-aca-env
- Variable Name:
aca-loga
- Type:
string
- Default Value:
dify-loga
- Variable Name:
aca-cert-path
- Type:
string
- Default Value:
./certs/difycert.pfx
- Variable Name:
aca-cert-password
- Type:
string
- Default Value:
password
- Variable Name:
aca-dify-customer-domain
- Type:
string
- Default Value:
dify.nikadwang.com
- Variable Name:
dify-api-image
- Type:
string
- Default Value:
langgenius/dify-api:0.6.16
- Variable Name:
dify-sandbox-image
- Type:
string
- Default Value:
langgenius/dify-sandbox:0.2.1
- Variable Name:
dify-web-image
- Type:
string
- Default Value:
langgenius/dify-web:0.6.16