Open4
DifyをGCEにデプロイする手順
一度試して上手く行ったものをChatGPTにまとめさせたスレッドです。
準備として、事前にGCPプロジェクトで課金を有効化しておく必要があります。
- Google Cloud CLI を使用して、GCE インスタンスを作成。
gcloud compute instances create dify \
--zone=asia-northeast1-b \
--machine-type=e2-small \
--tags=http-server,https-server
- GCE インスタンスへの SSH 接続。
gcloud compute ssh dify --zone=asia-northeast1-b
- Docker と Cloudflared のインストール。
sudo apt update
sudo apt install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -o /usr/bin/cloudflared && sudo chmod +x /usr/bin/cloudflared
- Dify リポジトリのクローンと起動。
git clone https://github.com/langgenius/dify.git
cd dify/docker
docker compose up -d
- Cloudflared 認証を実施。
cloudflared tunnel login
- Cloudflare Tunnel の作成。
cloudflared tunnel create dify-internal
- Cloudflare Tunnel の設定ファイル作成。
sudo mkdir -p /etc/cloudflared
sudo nano /etc/cloudflared/config.yml
config.yml ファイルの内容:
tunnel: dify-internal
credentials-file: /home/YOUR_NAME/.cloudflared/YOUR_TUNNEL_ID.json
origincert: /home/YOUR_NAME/.cloudflared/cert.pem
ingress:
- hostname: dify.YOUR_DOMAIN.com
service: http://localhost:80
- service: http_status:404
- Cloudflare Tunnel の実行。
cloudflared tunnel run dify-internal
-
Cloudflare ダッシュボードで
Always Use HTTPS
を有効化。 -
ファイアウォールルールの設定で、IP アドレス (
http://<GCEの外部IP>
) への直接アクセスをブロック。 -
ブラウザで
https://dify.YOUR_DOMAIN.com/install
へアクセスし、Dify の初期セットアップを完了。
こういうエラーが出た場合
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/version": dial unix /var/run/docker.sock: connect: permission denied
こうする
sudo usermod -aG docker $USER
newgrp docker
Difyプラグインを今すぐ使いたい人向け (2025/01/11)
git fetch --all --tags
git checkout tags/1.0.0-beta.1
cd dify/docker
docker compose pull
docker compose up -d