本文最后更新于 2026年5月11日。
本地或者通过1panel进入终端
然后进入编排所在文件夹
cd /opt/1panel/docker/compose/dify
之前是手动复制文件的方式安装的,比较麻烦,这次准备用官方教程重新安装,先git拉取官方库到本地
jose@6YOT5A2XM:/opt/1panel/docker/compose$ sudo git clone https://github.com/langgenius/dify.git
[sudo] password for jose:
Cloning into 'dify'...
remote: Enumerating objects: 59733, done.
remote: Counting objects: 100% (59733/59733), done.
remote: Compressing objects: 100% (15540/15540), done.
remote: Total 59733 (delta 43050), reused 59299 (delta 42888), pack-reused 0
Receiving objects: 100% (59733/59733), 35.58 MiB | 894.00 KiB/s, done.
Resolving deltas: 100% (43050/43050), done.
进入 dify 源代码的 docker 目录,执行一键启动命令:
cd dify/docker
docker compose up -d
最后检查是否所有容器都正常运行:
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
Upgrade Dify
进入 dify 源代码的 docker 目录,按顺序执行以下命令:
cd dify/docker
git pull origin main
docker compose down
docker compose pull
docker compose up -d