概要
Dify作为一个轻量级框架,是在经过anythingllm、RAGFlow等部署后验证发现
- git版本更新迭代快,功能全面
- 主流大模型接入,插件市场丰富
- 工作流编排, 知识库api适合满足个人、企业的定制化需求
环境准备
本方案仅限于linux环境,要求centos8,内存、存储、cpu最好大一些,建议内存16G,CPU4核,存储1TB,其他linux环境均可,都是docker-compose运行,差异不大,如果需要公网访问,那就要涉及到域名,公网ip,ssl证书,有需要的可以联系我
部署过程
- docker和coker compose都装好,我这里版本是
[root@localhost server]# docker -v
Docker version 25.0.3, build 4debf41
[root@localhost server]# docker-compose -v
Docker Compose version v2.20.0
- 在本地找一个磁盘大的目录,比如/home/dify, 克隆 Dify 源代码至本地环境,直接拉取最新的,会避免很多坑
git clone https://github.com/langgenius/dify.git
后续版本更新,可以先停服务,再拉取,第一次部署,可以跳过
##这里是我当前本地环境
cd /home/dify/dify/docker
docker-compose down && docker-compose up -d
版本拉取,比如要更新版本到1.7.1
cd /home/dify/dify
git pull origin 1.7.1
- 修改配置文件,将.env.example文件复制为.env, 若没有,说明目录不对,或者没有下载全
cd /home/dify/dify/docker
cp .env.example .env
基本上不要改,如果要配置ollama,就要在末尾追加,只在dify页面配置无效,很坑
# 启用自定义模型
CUSTOM_MODEL_ENABLED=true
# 指定 Olama 的 API地址(根据部署环境调整IP)
OLLAMA_API_BASE_URL=xxx.xx.xx.xx:11434
- 修改docker-compose配置文件,找到docker-compose-template.yaml,复制为docker-compose.yaml
cd /home/dify/dify/docker
cp docker-compose-template.yaml docker-compose.yaml
里面基本上不用改,如果涉及公网和ssl证书,就要修改了,里面坑也多
7. 启动docker容器,这里都是用docker-compose
docker-compose up -d
启动完检查一下,我这里版本是1.7.1,至少如下必须是健康的,否则就要docker logs 容器id或者名称,看报错,然后百度错误了
[root@localhost docker]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2bae5ee508ba nginx:latest "sh -c 'cp /docker-e…" 11 days ago Up 11 days 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp docker-nginx-1
b53ca3b4a938 langgenius/dify-api:1.7.1 "/bin/bash /entrypoi…" 11 days ago Up 11 days 5001/tcp docker-worker_beat-1
687590d3d08c langgenius/dify-api:1.7.1 "/bin/bash /entrypoi…" 11 days ago Up 11 days 5001/tcp docker-worker-1
e1431b027df1 langgenius/dify-api:1.7.1 "/bin/bash /entrypoi…" 11 days ago Up 11 days 5001/tcp docker-api-1
d399d4c16356 langgenius/dify-plugin-daemon:0.2.0-local "/bin/bash -c /app/e…" 11 days ago Up 11 days 0.0.0.0:5003->5003/tcp, :::5003->5003/tcp docker-plugin_daemon-1
27baa2d3452e langgenius/dify-sandbox:0.2.12 "/main" 11 days ago Up 11 days (healthy) docker-sandbox-1
daf0c0add3e1 semitechnologies/weaviate:1.19.0 "/bin/weaviate --hos…" 11 days ago Up 11 days docker-weaviate-1
ee9325ea63bc langgenius/dify-web:1.7.1 "/bin/sh ./entrypoin…" 11 days ago Up 11 days 3000/tcp
- 停止docker容器
docker-compose down
- 访问dify,默认是80端口,如果要改,一般是修改docker-compose.yaml里面参数
# 本地环境
http://localhost
# 服务器环境
http://your_server_ip
第一次直接注册一个账号即可,若出现密码忘记,执行如下命令
#Dify密码重置流程(适用于管理员或本地部署)
docker exec -it docker-api-1 flask reset-password
小结
1. 部署较简单,主要注意 .env.example、docker-compose-template.yaml 这两个文件记住改一下名字即可
2. 版本拉取后,可能.env.example、docker-compose-template.yaml内容有变化,记得同步更新到 .env和docker-compose.yaml,不要覆盖
PS:后续还会出一篇dify使用的文章
3151

被折叠的 条评论
为什么被折叠?



