本地搭建dify

76 次阅读

本文最后更新于 2026年5月11日。

官方教程
https://docs.dify.ai/v/zh-hans/getting-started/install-self-hosted/docker-compose

详细使用教程
https://blog.csdn.net/qq_43692950/article/details/131345124

先将仓库拉取到本地

E:\wsldocker>git clone https://github.com/langgenius/dify.git
Cloning into 'dify'...
fatal: unable to access 'https://github.com/langgenius/dify.git/': Failure when receiving data from the peer

E:\wsldocker>git clone git@github.com:langgenius/dify.git
Cloning into 'dify'...
Enter passphrase for key '/c/Users/weiyo/.ssh/github_ssh_private_230713_id_ed25519':
remote: Enumerating objects: 58477, done.
remote: Counting objects: 100% (13412/13412), done.
remote: Compressing objects: 100% (1168/1168), done.
remote: Total 58477 (delta 12708), reused 12370 (delta 12240), pack-reused 45065
Receiving objects: 100% (58477/58477), 32.68 MiB | 34.00 KiB/s, done.
Resolving deltas: 100% (42202/42202), done.
Updating files: 100% (4293/4293), done.

Start Dify

进入 dify 源代码的 docker 目录,执行一键启动命令:

cd dify/docker
docker compose up -d

运行日志

E:\wsldocker\dify\docker>docker compose up -d
time="2024-05-09T15:29:02+08:00" level=warning msg="E:\\wsldocker\\dify\\docker\\docker-compose.yaml: `version` is obsolete"
[+] Running 66/8
 ✔ nginx Pulled                                                                                                  157.6s
 ✔ api Pulled                                                                                                    306.4s
 ✔ web Pulled                                                                                                     50.8s
 ✔ worker Pulled                                                                                                 306.4s
 ✔ redis Pulled                                                                                                  182.9s
 ✔ sandbox Pulled                                                                                                 40.2s
 ✔ db Pulled                                                                                                     120.5s
 ✔ weaviate Pulled                                                                                               188.9s
[+] Running 9/9
 ✔ Network docker_default       Created                                                                            0.1s
 ✔ Container docker-sandbox-1   Started                                                                           21.3s
 ✔ Container docker-web-1       Started                                                                           21.3s
 ✔ Container docker-weaviate-1  Started                                                                           21.3s
 ✔ Container docker-db-1        Started                                                                           21.3s
 ✔ Container docker-redis-1     Started                                                                           21.3s
 ✔ Container docker-worker-1    Started                                                                            0.4s
 ✔ Container docker-api-1       Started                                                                            0.4s
 ✔ Container docker-nginx-1     Started                                                                            0.6s

E:\wsldocker\dify\docker>docker compose ps
time="2024-05-09T15:35:22+08:00" level=warning msg="E:\\wsldocker\\dify\\docker\\docker-compose.yaml: `version` is obsolete"
NAME                IMAGE                              COMMAND                   SERVICE    CREATED              STATUS                    PORTS
docker-api-1        langgenius/dify-api:0.6.7          "/bin/bash /entrypoi…"   api        52 seconds ago       Up 3 seconds              5001/tcp
docker-db-1         postgres:15-alpine                 "docker-entrypoint.s…"   db         About a minute ago   Up 50 seconds (healthy)   5432/tcp
docker-nginx-1      nginx:latest                       "/docker-entrypoint.…"   nginx      51 seconds ago       Up 45 seconds             0.0.0.0:80->80/tcp
docker-redis-1      redis:6-alpine                     "docker-entrypoint.s…"   redis      About a minute ago   Up 49 seconds (healthy)   6379/tcp
docker-sandbox-1    langgenius/dify-sandbox:0.1.0      "/main"                   sandbox    About a minute ago   Up 50 seconds
docker-weaviate-1   semitechnologies/weaviate:1.19.0   "/bin/weaviate --hos…"   weaviate   About a minute ago   Up 48 seconds
docker-web-1        langgenius/dify-web:0.6.7          "/bin/sh ./entrypoin…"   web        About a minute ago   Up 48 seconds             3000/tcp
docker-worker-1     langgenius/dify-api:0.6.7          "/bin/bash /entrypoi…"   worker     52 seconds ago       Up 46 seconds             5001/tcp

访问locakhost就能看到dify的界面了。

本地大模型的api地址设置

设置使用本地大模型ollama,api地址填物理机的局域网地址加端口号,例如我的是下面的地址,不能使用http://127.0.0.1:11434/.
http://192.168.2.38:11434/
当时open web ui使用的是下面的形式。
http://host.docker.internal:11434