【(保姆级教程)Ubuntu24.10下部署Dify】
目录
- 一、下载Ubuntu
- 二、安装Ubuntu
- 三、在 Ubuntu 上安装 Docker Engine
- 1、设置Docker的apt仓库
- 2、安装 Docker 包
- 四、在 Ubuntu 上安装 Docker Desktop
- 1、先决条件
- 2、下载最新 DEB 包
- 3、安装软件包
- 4、启动 Docker Desktop
- 5、检查版本
- 五、克隆 Dify 代码仓库
- 六、启动 Dify
- 1、进入 Dify 源代码的 Docker 目录
- 2、复制环境配置文件
- 3、启动/关闭 Docker 容器
- 4、访问Dify
- 七、记录我在安装中遇到的问题
- 1、dify代码执行中如何安装缺少的包
- 2、dify报错:Failed to execute code, which is likely a network issue, please check if the sandbox service is running. ( Error: [Errno -3] Temporary failure in name resolution )
- 3、存储空间不足导致docker compose pull过程中镜像循环下载
一、下载Ubuntu
Ubuntu 24.10 (Oracular Oriole)
desktop和live版的区别是desktop带图形化桌面,这里下载live版
二、安装Ubuntu
如果需要通过SecureFx等软件访问虚拟机,需要确保安装了 SSH 工具
#安装 ssh
sudo apt install ssh
#安装 ssh 服务端
sudo apt install openssh-server
安装 ssh 客户端
sudo apt install openssh-client
编辑 sshd 配置
sudo vi /etc/ssh/sshd_config Port 22
PasswordAuthentication yes:wq保存并退出重新启动 ssh
sudo /etc/init.d/ssh restart
启动 SSH 服务
sudo netstat -tlp
开启 SSH 服务
sudo systemctl start ssh
置系统启动时自动启动 ssh 服务
sudo systemctl enable ssh
查看ssh服务是否启动
sudo systemctl status ssh
本地进行测试
ssh localhost
三、在 Ubuntu 上安装 Docker Engine
官方教程:Ubuntu| Docker 插件 — Ubuntu | Docker Docs
我选择的是使用 apt
存储库安装
1、设置Docker的apt仓库
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
2、安装 Docker 包
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
四、在 Ubuntu 上安装 Docker Desktop
官方教程:Ubuntu | Docker Docs
1、先决条件
- 满足 一般系统要求 。
- 使用 Ubuntu 22.04、24.04 或最新的非 LTS 版本的 x86-64 系统。
- 如果您没有使用 GNOME,则必须安装
gnome-terminal
以启用从 Docker Desktop 的终端访问:
sudo apt install gnome-terminal
2、下载最新 DEB 包
https://desktop.docker.com/linux/main/amd64/docker-desktop-amd64.deb?utm_source=docker&utm_medium=webreferral&utm_campaign=docs-driven-download-linux-amd64&_gl=11hi8hm2_gaMTYzOTg5MTY3LjE3NDE2NTU2ODU._ga_XJWPQMJYHQ*MTc0NDc5MzEzMS4zLjEuMTc0NDc5MzkxNy42MC4wLjA.
3、安装软件包
sudo apt-get update
sudo apt-get install ./docker-desktop-amd64.deb
4、启动 Docker Desktop
systemctl --user start docker-desktop
systemctl --user enable docker-desktop--开机启动
5、检查版本
docker compose version
docker --version
docker version
五、克隆 Dify 代码仓库
安装 Dify 之前, 请确保你的机器已满足最低安装要求:
- CPU >= 2 Core
- RAM >= 4 GiB
访问:https://github.com/langgenius/dify.git,下载代码包
将zip文件上传到用户目录下
解压,重命名为dify
unzip dify.zipmv dify-main dify
六、启动 Dify
1、进入 Dify 源代码的 Docker 目录
cd dify/docker
2、复制环境配置文件
cp .env.example .env
3、启动/关闭 Docker 容器
docker compose pull # 先拉取所有镜像
docker compose up -d # 再启动容器其他命令
docker compose down #关闭
docker compose ps #查看进程
docker compose stop sandbox #停止某个服务,例如sandbox 服务
docker compose restart sandboxre #启动某个服务,例如sandbox 服务
4、访问Dify
http://192.168.15.130/install
七、记录我在安装中遇到的问题
1、dify代码执行中如何安装缺少的包
cd dify/docker/volumes/sandbox/dependencies/sudo vi python-requirements.txt
增加你需要的包重启sandbox 服务
docker compose stop sandbox
docker compose start sandboxre
2、dify报错:Failed to execute code, which is likely a network issue, please check if the sandbox service is running. ( Error: [Errno -3] Temporary failure in name resolution )
查看日志
docker logs docker-sandbox-1 --tail 100
比如我遇到的问题是:Sandbox 尝试安装 pandas
和 numpy
,但 pip install
过程因某种原因中断(exit status 1
)。
sudo vi python-requirements.txt
最直接的操作是删除`pandas` 和 `numpy`然后重启sandbox 服务
docker compose stop sandbox
docker compose start sandboxre
3、存储空间不足导致docker compose pull过程中镜像循环下载
df -hfree
查看到存储空间不足
1、停止虚拟机
2、扩容虚拟机(有快照的话需要删除,建议安装虚拟机时就分配大一点的空间,因为后续扩容还是比较麻烦的)
3、进行虚拟机内扩容
1. **查看当前分区结构**
sudo lsblk
sudo parted /dev/sda print
2. **扩展物理分区(关键步骤)**
sudo growpart /dev/sda 3 # 扩展分区3(根据你的lsblk输出调整数字)
如果报错 `growpart: command not found`,先安装
sudo apt install cloud-guest-utils
3. **刷新物理卷(PV)**
sudo pvresize /dev/sda3
4. **验证卷组空间**
sudo vgdisplay
5. **扩展逻辑卷(LV)**
sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
6. **最终验证**
df -h /