本レポジトリでは、Terraform により自動で Google Cloud のリソースを立ち上げ、Dify を高可用構成でデプロイすることが可能です。
- サーバーレスホスティング
- オートスケール
- データ永続化
- Google Cloud アカウント
- Terraform インストール済み
- gcloud CLI インストール済み
- 必要なAPIの有効化 (Serverless VPC Access, Service Networking, etc.)
terraform/environments/dev/terraform.tfvars
ファイルで環境固有の値を設定します。- terraform stateを管理する用のGCSバケットを事前に作成し、
terraform/environments/dev/provider.tf
ファイルの "your-tfstate-bucket" を作成したバケット名に書き換えます。
-
リポジトリをクローン:
git clone https://github.com/DeNA/dify-google-cloud-terraform.git
-
Terraformを初期化:
cd terraform/environments/dev terraform init
-
Artifact Registry リポジトリを作成:
terraform apply -target=module.registry
-
コンテナイメージをビルド&プッシュ:
cd ../../.. sh ./docker/cloudbuild.sh <your-region> <your-project-id>
また、dify-api イメージのバージョンを指定することもできます。
sh ./docker/cloudbuild.sh <your-region> <your-project-id> <dify-api-version>
バージョンを指定しない場合、デフォルトで最新バージョンが使用されます。
-
Terraformをプランニング:
cd terraform/environments/dev terraform plan
-
Terraformを適用:
terraform apply
terraform destroy
注意: Cloud Storage、Cloud SQL、VPC、およびVPC Peeringは terraform destroy
コマンドで削除できません。これらはデータ永続化のための重要なリソースです。コンソールにアクセスして慎重に削除してください。その後、terraform destroy
コマンドを使用してすべてのリソースが削除されたことを確認できます。
このソフトウェアはMITライセンスの下でライセンスされています。詳細はLICENSEファイルを参照してください。