主题
Dify 部署步骤
项目简介
Dify 是一款开源的 LLM 应用开发平台。它提供后端即服务(Backend as Service)和可视化的 AI 应用构建能力,让开发者可以快速构建和部署 AI 应用。
基础环境安装
在部署之前,需要先安装基础的运行环境。 安装之前先执行:更换源方法
Linux 系统(CentOS/RHEL)
1. 安装基础依赖
bash
# 切换成root身份
su - root
# 更新系统
yum update -y
# 安装基础工具
yum install -y git wget curl vim1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
2. 安装 Python
bash
# 安装 EPEL 仓库
yum install -y epel-release
# 安装 Python 3.6(CentOS 7 默认版本)
yum install -y python36 python36-pip python36-devel
# 创建软链接,实测不运行就可以
# ln -sf /usr/bin/python3.6 /usr/bin/python3
# ln -sf /usr/bin/pip3.6 /usr/bin/pip3
# 验证安装
python3 --version
pip3 --version1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
3. 安装 PostgreSQL
bash
# 安装 PostgreSQL
yum install -y postgresql-server postgresql-contrib
# 初始化数据库
postgresql-setup initdb
# 启动并设置开机自启
systemctl start postgresql
systemctl enable postgresql
# 设置密码
su - postgres
psql -c "ALTER USER postgres PASSWORD 'dify123456';"
exit
# 创建 Dify 数据库
su - postgres
psql -c "CREATE DATABASE dify;"
psql -c "CREATE USER dify WITH PASSWORD 'dify123456';"
psql -c "GRANT ALL PRIVILEGES ON DATABASE dify TO dify;"
exit1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21



4. 安装 Redis
bash
# 安装 EPEL 仓库(如果未安装)
yum install -y epel-release
# 安装 Redis
yum install -y redis
# 启动并设置开机自启
systemctl start redis
systemctl enable redis
# 测试 Redis
redis-cli ping1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
如上截图即连接成功
源码方式部署(推荐)
第一步:获取项目代码
bash
# 创建项目目录
mkdir -p ~/projects
cd ~/projects
# 克隆 Dify 项目
git clone https://github.com/langgenius/dify.git
# 进入项目目录
cd dify-main1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9

第二步:配置环境变量
bash
cd docker
cp .env.example .env
docker compose up -d1
2
3
2
3
主要配置项:
bash
# 数据库配置
DB_USERNAME=dify
DB_PASSWORD=dify123456
DB_HOST=localhost
DB_PORT=5432
DB_DATABASE=dify
# Redis 配置
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
# 密钥配置(保持默认或生成新的)
SECRET_KEY=your-secret-key-here
ENCRYPTION_KEY=your-encryption-key-here
# 其他配置保持默认即可1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
第三步:安装 Python 依赖
bash
# 安装后端依赖
cd ~/projects/dify/api
# 创建虚拟环境
python3 -m venv venv
# 激活虚拟环境
source venv/bin/activate
# 升级 pip
pip install --upgrade pip
# 安装依赖
pip install -r requirements.txt
# 退出虚拟环境
deactivate1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
第四步:数据库迁移
bash
# 进入 API 目录
cd ~/projects/dify/api
# 激活虚拟环境
source venv/bin/activate
# 执行数据库迁移
flask db upgrade
# 初始化数据(可选)
python scripts/init_data.py
# 退出虚拟环境
deactivate1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
第五步:启动后端服务
bash
# 进入 API 目录
cd ~/projects/dify/api
# 激活虚拟环境
source venv/bin/activate
# 启动后端服务(开发模式)
flask run --host 0.0.0.0 --port 5001
# 生产环境可以使用 gunicorn
# gunicorn -w 4 -b 0.0.0.0:5001 app:app1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
第六步:安装前端依赖
bash
# 新开一个终端,进入前端目录
cd ~/projects/dify/web
# 安装 Node.js(如果未安装)
curl -fsSL https://rpm.nodesource.com/setup_18.x | bash -
yum install -y nodejs
# 安装 yarn
npm install -g yarn
# 安装前端依赖
yarn install1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
第七步:启动前端服务
bash
# 进入前端目录
cd ~/projects/dify/web
# 启动开发服务器
yarn dev1
2
3
4
5
2
3
4
5
第八步:访问应用
- 前端访问地址:http://your-server-ip:3000
- 后端 API 地址:http://your-server-ip:5001
首次访问时需要注册管理员账户。
容器方式部署
第一步:安装 Docker
bash
# 安装必要的依赖
yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加 Docker 仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker CE
yum install -y docker-ce docker-ce-cli containerd.io
# 启动 Docker
systemctl start docker
systemctl enable docker
# 验证安装
docker --version1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
第二步:安装 Docker Compose
bash
# 下载 Docker Compose
curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加执行权限
chmod +x /usr/local/bin/docker-compose
# 验证安装
docker-compose --version1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
第三步:使用 Docker Compose 部署
bash
# 进入项目目录
cd ~/projects/dify
# 复制 Docker Compose 配置文件
cp docker-compose.example.yaml docker-compose.yaml
# 编辑配置文件(可选)
vim docker-compose.yaml
# 启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps
# 查看日志
docker-compose logs -f1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
第四步:初始化数据库
bash
# 等待服务启动完成后,执行数据库迁移
docker-compose exec api flask db upgrade1
2
2
第五步:访问应用
- 前端访问地址:http://your-server-ip
- 后端 API 地址:http://your-server-ip/v1
防火墙配置
bash
# 关闭防火墙(测试环境)
systemctl stop firewalld
systemctl disable firewalld
# 或者开放端口(生产环境)
firewall-cmd --permanent --add-port=3000/tcp # 前端端口
firewall-cmd --permanent --add-port=5001/tcp # 后端端口
firewall-cmd --permanent --add-port=6379/tcp # Redis 端口
firewall-cmd --permanent --add-port=5432/tcp # PostgreSQL 端口
firewall-cmd --reload
# 关闭 SELinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
常用管理命令
源码部署管理
bash
# 查看后端服务
ps aux | grep flask
# 重启后端服务
cd ~/projects/dify/api
source venv/bin/activate
flask run --host 0.0.0.0 --port 5001
# 查看前端服务
ps aux | grep node
# 重启前端服务
cd ~/projects/dify/web
yarn dev1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
容器部署管理
bash
# 查看所有容器状态
docker-compose ps
# 重启所有服务
docker-compose restart
# 重启特定服务
docker-compose restart api
docker-compose restart web
# 查看服务日志
docker-compose logs api
docker-compose logs web
# 停止所有服务
docker-compose down
# 完全清理(包括数据卷)
docker-compose down -v1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
故障排除
1. 数据库连接失败
bash
# 检查 PostgreSQL 服务状态
systemctl status postgresql
# 测试数据库连接
psql -h localhost -U dify -d dify1
2
3
4
5
2
3
4
5
2. Redis 连接失败
bash
# 检查 Redis 服务状态
systemctl status redis
# 测试 Redis 连接
redis-cli ping1
2
3
4
5
2
3
4
5
3. 前端无法访问后端
检查环境变量配置:
bash
# 确保 API 地址配置正确
VUE_APP_API_BASE_URL=http://your-server-ip:50011
2
2
4. 端口被占用
bash
# 查看端口占用
lsof -i :3000 # 前端端口
lsof -i :5001 # 后端端口
# 杀死进程
kill -9 <PID>1
2
3
4
5
6
2
3
4
5
6
项目特性
- 🚀 支持多种 LLM 模型(OpenAI、Claude、Llama 等)
- 🎯 可视化的 AI 应用构建界面
- 🔌 丰富的插件和集成能力
- 📊 完整的日志和监控功能
- 👥 支持团队协作
- 🌐 多语言支持
- 🔒 企业级安全特性
在线参考
- 官方文档:https://docs.dify.ai/
- GitHub 仓库:https://github.com/langgenius/dify
- 在线演示:https://cloud.dify.ai/