Docker Compose 部署 Dify
2024-06-21
使用Docker Compose在不同操作系统上部署Dify应用的步骤和要求。
Docker Compose 部署
先决条件
macOS 10.14 或更高版本
- Docker Desktop
- 设置 Docker 虚拟机使用至少 2 个虚拟 CPU (vCPU) 和 8 GB 的初始内存。否则,安装可能会失败。有关更多信息,请参阅在 Mac 上安装 Docker Desktop。
Linux 平台
- Docker 19.03 或更高版本
- Docker Compose 1.25.1 或更高版本
- 请参阅安装 Docker和安装 Docker Compose以获取更多信息。
启用 WSL 2 的 Windows
- Docker Desktop
- 我们建议在将源代码和其他数据绑定到 Linux 容器时,将其存储在 Linux 文件系统中,而不是 Windows 文件系统中。有关更多信息,请参阅使用 WSL 2 后端在 Windows 上安装 Docker Desktop。
克隆 Dify
将 Dify 源代码克隆至本地:
git clone https://github.com/langgenius/dify.git
启动 Dify
进入 Dify 源代码的 docker
目录,执行一键启动命令:
cd dify/docker docker compose up -d
注意:如果您的系统安装了 Docker Compose V2 而不是 V1,请使用
docker compose
而不是docker-compose
。通过$ docker compose version
检查是否为这种情况。
部署结果
部署成功后,您将看到如下输出:
[+] Running 7/7 ✔ Container docker-web-1 Started 1.0s ✔ Container docker-redis-1 Started 1.1s ✔ Container docker-weaviate-1 Started 0.9s ✔ Container docker-db-1 Started 0.0s ✔ Container docker-worker-1 Started 0.7s ✔ Container docker-api-1 Started 0.8s ✔ Container docker-nginx-1 Started
最后,检查所有容器是否正常运行:
docker compose ps
包括 3 个业务服务 api
/ worker
/ web
,以及 4 个基础组件 weaviate
/ db
/ redis
/ nginx
。
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS docker-api-1 langgenius/dify-api:0.3.2 "/entrypoint.sh" api 4 seconds ago Up 2 seconds 80/tcp, 5001/tcp docker-db-1 postgres:15-alpine "docker-entrypoint.s…" db 4 seconds ago Up 2 seconds 0.0.0.0:5432->5432/tcp docker-nginx-1 nginx:latest "/docker-entrypoint.…" nginx 4 seconds ago Up 2 seconds 0.0.0.0:80->80/tcp docker-redis-1 redis:6-alpine "docker-entrypoint.s…" redis 4 seconds ago Up 3 seconds 6379/tcp docker-weaviate-1 semitechnologies/weaviate:1.18.4 "/bin/weaviate --hos…" weaviate 4 seconds ago Up 3 seconds docker-web-1 langgenius/dify-web:0.3.2 "/entrypoint.sh" web 4 seconds ago Up 3 seconds 80/tcp, 3000/tcp docker-worker-1 langgenius/dify-api:0.3.2 "/entrypoint.sh" worker 4 seconds ago Up 2 seconds 80/tcp, 5001/tcp
升级 Dify
进入 Dify 源代码的 docker
目录,按顺序执行以下命令:
cd dify/docker git pull origin main docker compose down docker compose pull docker compose up -d
访问 Dify
在浏览器中输入 http://localhost
访问 Dify。