【Dify】通过Docker-Compose的安装部署(Linux系统)
一、介绍
本文介绍使用CentOS 7系统,通过docker compose安装部署Dify的Docker容器,实现在windows系统访问,下面将介绍详细步骤。
二、环境准备
首先,你需要安装docker和docker compose,在此基础上进行安装和部署Dify。
1. 安装必要依赖
# 切换到root用户
sudo su# 更新系统并安装基础工具
yum update -y
yum install -y wget curl git yum-utils device-mapper-persistent-data lvm2
2. 安装 Docker
# 卸载旧版本Docker(如有)
yum remove -y docker docker-common docker-selinux docker-engine# 添加Docker官方yum源
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 --version
3. 安装 Docker Compose
# 下载Docker Compose v2.20.3(兼容CentOS 7的稳定版本)
curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# 赋予执行权限
chmod +x /usr/local/bin/docker-compose# 创建软链接,确保全局可用
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose# 验证安装
docker-compose --version # 应显示v2.20.3版本信息
docker和docker-compose的详细安装步骤见:https://blog.csdn.net/2401_84926677/article/details/152282454
(推荐安装2.xx版本的)查看版本:

4.安装 Git 工具
# 使用yum安装Git
yum install -y git# 验证Git是否安装成功
git --version # 输出类似:git version 1.8.3.1 即表示安装成功
![]()
三、部署 Dify
1. 拉取 Dify 源码并进入目录
git clone https://github.com/mirrors/dify.git
# 或者 使用gitee更快一些
git clone https://gitee.com/mirrors/dify.git
# 切换到dify目录
cd dify
使用Gitee网址拉取Dify源码:

2. 配置环境变量
切换到dify\docker目录下复制并修改环境变量配置:
# 复制示例配置文件
cp .env.example .env# 编辑配置文件(使用 vim)
vim .env
按i 修改关键配置项(其他保持默认)
# Dify 控制台 Web 访问地址
CONSOLE_WEB_URL=http://<你的CentOS服务器IP>:3000
按Esc,输入:wq保存退出
(如果使用Xshell或MobaXterm连接工具可以直接双击打开,进行搜索和修改)

3. 查看docker-compose文件
下面在\dify\docker目录下输入以下代码查看一下是否有docker-compose.yml文件:
ls -l docker-compose.yaml
可以看到docker-compose.yaml文件:

该文件定义了部署 Dify 所需的所有服务(如 API 服务、数据库、Redis 等)、镜像版本、端口映射、数据卷等配置。
4. 运行docker-compose.yml文件以启动 Dify 服务(后台运行)
在dify的docker目录下输入以下命令执行docker-compose.yml
docker-compose up -d
大概需要5分钟左右!
5. 镜像拉取问题的其他方式
如果出现访问网址失败,可以通过windows下的docker拉取镜像后再上传到linux系统上运行。

windows下的Docker Desktop安装步骤:
https://blog.csdn.net/2401_84926677/article/details/154214558
打开docker-compose.middleware.yaml文件查看各镜像版本:

重点关注image的内容,显示了镜像的版本:

然后拉取:

全部拉取完后,在Docker Desktop里查看:

输入docker images查看已有镜像

导出镜像为 Tar 文件:
在 PowerShell中执行以下命令,将所有镜像打包到一个 Tar 文件
docker save -o D:\dify_images.tar `postgres:15-alpine `redis:6-alpine `langgenius/dify-sandbox:0.2.12 `langgenius/dify-plugin-daemon:0.3.3-local `ubuntu/squid:latest `semitechnologies/weaviate:1.27.0 `langgenius/dify-api:latest `langgenius/dify-web:1.9.2 `nginx:latest
打包后的tar文件:

将dify_images.tar 文件拖拽到 Linux 的/root/dify/目录下:


导入镜像:
# 进入 /root/dify 目录
cd /root/dify# 导入镜像
sudo docker load -i dify_images.tar


docker images查看镜像是否拉取齐全:

可以看到拉取齐全。
6. 启动docker-compose.yml文件
切换到/root/dify/docker目录(docker-compose.yml的所在目录)
cd /root/dify/docker
启动 Dify 服务(用本地镜像,绕开网络问题)
执行启动命令,也可以加 --no-pull 参数,避免 Docker 再次尝试远程拉取镜像
# 启动所有服务,后台运行
sudo docker-compose up -d

运行成功!!!
docker ps查看运行中的镜像容器

输入ifconfig或ip addr查看你的ens33或eth0虚拟机地址
windows系统的浏览器输入虚拟机地址,无需加端口,nginx默认端口80(除非你另外设置了)

设置管理员账户和密码,进行登录

至此,安装和部署完毕!!!

