Dify (Ubuntu 24.04 Noble x64)部署教程

1.简述

后续补充

2.开始

2.1.下载或者克隆项目内容到本地

https://codeload.github.com/Gideon-Duong/dify/zip/refs/heads/main

bash 复制代码
git clone https://github.com/Gideon-Duong/dify.git

2.2.安装docker环境

bash 复制代码
# 安装依赖
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

# 添加阿里云的 GPG 密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 添加阿里云的 Docker CE 仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装 Docker Engine 和 Compose 插件
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

2.3.Dify环境下载与挂起

测试DaoCloud源是否可用,决定能不能部署完成:

bash 复制代码
docker pull docker.m.daocloud.io/library/hello-world:latest

下面是一气呵成步骤,如果源挂了就game over了:

bash 复制代码
cd dify
cd docker
cp .env.example .env

# 逐个拉取,避免限流
docker pull docker.m.daocloud.io/library/postgres:15-alpine
docker pull docker.m.daocloud.io/library/redis:6-alpine
docker pull docker.m.daocloud.io/library/nginx:latest
docker pull docker.m.daocloud.io/langgenius/dify-api:1.0.0
docker pull docker.m.daocloud.io/langgenius/dify-web:1.0.0
docker pull docker.m.daocloud.io/langgenius/dify-sandbox:0.2.10
docker pull docker.m.daocloud.io/langgenius/dify-plugin-daemon:0.0.3-local
docker pull docker.m.daocloud.io/semitechnologies/weaviate:1.19.0
docker pull docker.m.daocloud.io/ubuntu/squid:latest

# 将拉取的镜像重命名为原始名称(Docker Compose 需要)
docker tag docker.m.daocloud.io/library/postgres:15-alpine postgres:15-alpine
docker tag docker.m.daocloud.io/library/redis:6-alpine redis:6-alpine
docker tag docker.m.daocloud.io/library/nginx:latest nginx:latest
docker tag docker.m.daocloud.io/langgenius/dify-api:1.0.0 langgenius/dify-api:1.0.0
docker tag docker.m.daocloud.io/langgenius/dify-web:1.0.0 langgenius/dify-web:1.0.0
docker tag docker.m.daocloud.io/langgenius/dify-sandbox:0.2.10 langgenius/dify-sandbox:0.2.10
docker tag docker.m.daocloud.io/langgenius/dify-plugin-daemon:0.0.3-local langgenius/dify-plugin-daemon:0.0.3-local
docker tag docker.m.daocloud.io/semitechnologies/weaviate:1.19.0 semitechnologies/weaviate:1.19.0
docker tag docker.m.daocloud.io/ubuntu/squid:latest ubuntu/squid:latest

docker compose up -d

2.4.这是自用本地文件的安装命令

bash 复制代码
# 解压完dify库之后的一次性操作
cd dify/docker
cp .env.example .env
docker load -i dify-images.tar
docker compose up -d

2.5.改端口重启然后打开UI界面

bash 复制代码
# 如果 EXPOST_NGINX_PORT 已存在,修改其值;否则在文件末尾添加
if grep -q "^EXPOSE_NGINX_PORT=" .env; then
    sed -i 's/^EXPOSE_NGINX_PORT=.*/EXPOSE_NGINX_PORT=8080/' .env
else
    echo "EXPOSE_NGINX_PORT=8080" >> .env
fi

# 重启服务
docker compose down && docker compose up -d

然后访问 http://localhost:8080 即可

64

3.总结

难点:docker国内镜像源很多用不了

相关推荐
ken22326 小时前
ubuntu 24.04, audacity 4 AppImage 加载 libavdevice.so.62 /.61 /.63 失败:依赖缺失?
linux·运维·ubuntu
NightReader6 小时前
vCenter8部署
linux
未完成的歌~6 小时前
Windows 系统镜像备份还原 操作手册
运维
高山有多高6 小时前
【Linux笔记】线程概念与控制
linux
阳光九叶草LXGZXJ6 小时前
达梦数据库-学习-69-DM9主备集群部署
linux·运维·服务器·数据库·sql·学习
Sun 32856 小时前
Linux 常用命令梳理
linux·运维·服务器·开发·常用命令
一条破秋裤6 小时前
Linux 线程同步:条件变量
java·linux·jvm
ai小陈6 小时前
深度学习CUDA异步报错定位:从错误堆栈到最小复现
运维·人工智能·深度学习·ai·gpu算力
Chill606 小时前
服务器home文件夹太小怎么把配置迁移到其他盘
运维·服务器
LRL_6 小时前
【K8s 存储】Longhorn v1.12.1 离线安装全流程:外网制作离线包 + 内网部署(附踩坑实录)
linux·windows·node.js