news 2026/4/26 9:08:07

手把手教你:在Ubuntu 22.04上用Docker离线部署Dify AI工作流平台(附全套镜像包)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
手把手教你:在Ubuntu 22.04上用Docker离线部署Dify AI工作流平台(附全套镜像包)

企业级内网环境下的Dify AI工作流平台离线部署实战指南

在金融、军工等对数据安全要求极高的行业,核心业务系统往往运行在完全隔离的内网环境中。传统基于公有云的AI工具链部署方式面临两大痛点:一是模型推理可能涉及敏感数据外传风险,二是生产环境服务器通常禁止连接外网下载依赖包。本文将手把手带您完成Dify AI工作流平台Ubuntu 22.04 Server上的全离线部署,所有组件均通过预下载的Docker镜像包实现,真正实现"开箱即用"的零网络依赖部署体验。

1. 离线部署环境准备

1.1 虚拟机与操作系统配置

选择VMware Workstation 17作为虚拟化平台,其优势在于:

  • 支持完整的硬件虚拟化隔离
  • 提供稳定的快照回滚功能
  • 内置NAT网络模式可模拟内网环境

推荐配置参数

CPU: 4核以上(需开启VT-x/AMD-V虚拟化支持) 内存: 8GB以上 磁盘: 100GB SSD(建议使用Thin Provision模式) 网络适配器: NAT模式(模拟企业内网环境)

安装Ubuntu 22.04.5 Server时需特别注意:

  1. 在软件选择步骤取消所有云服务相关选项
  2. 分区方案建议:
    • /boot:1GB
    • swap:内存的1.5倍
    • /:剩余全部空间
  3. 安装完成后立即执行:
    sudo apt update && sudo apt upgrade -y sudo apt install openssh-server -y

1.2 离线资源包准备

我们已为您整理好全套部署资源(下载链接见文末):

  • 基础组件

    • ubuntu_squid_latest.tar:本地缓存代理
    • nginx_latest.tar:Web服务器
    • postgres_15-alpine.tar:数据库
    • redis_6-alpine.tar:缓存服务
  • Dify核心组件

    • langgenius_dify-api_0.15.3.tar:主服务
    • langgenius_dify-web_0.15.3.tar:前端界面
    • langgenius_dify-sandbox_0.2.10.tar:安全沙箱

提示:所有镜像均已在纯净环境中测试通过,哈希校验值包含在资源包的checksum.txt文件中

2. Docker离线安装与配置

2.1 离线安装Docker引擎

通过预下载的.deb包完成安装:

# 安装依赖 sudo dpkg -i libltdl7_2.4.6-14_amd64.deb sudo dpkg -i docker-ce-cli_20.10.12~3-0~ubuntu-jammy_amd64.deb sudo dpkg -i containerd.io_1.4.12-1_amd64.deb sudo dpkg -i docker-ce_20.10.12~3-0~ubuntu-jammy_amd64.deb # 验证安装 sudo docker --version

2.2 配置本地镜像仓库

为避免后续操作中的网络请求,需修改Docker配置:

sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<EOF { "registry-mirrors": [], "insecure-registries": [], "debug": false, "experimental": false } EOF sudo systemctl restart docker

3. Docker镜像导入与管理

3.1 批量导入镜像

将下载的镜像包上传至服务器后执行:

for image in *.tar; do echo "正在导入 $image..." docker load -i $image done

常见问题处理

错误现象解决方案
"no space left on device"执行docker system prune -a清理空间
"invalid tar header"重新下载镜像包并校验MD5
"permission denied"在命令前添加sudo或当前用户加入docker组

3.2 镜像版本验证

导入完成后检查关键镜像:

docker images | grep -E 'dify|postgres|redis'

应显示类似结果:

langgenius/dify-api 0.15.3 a1b2c3d4e5f6 2 weeks ago 1.2GB langgenius/dify-web 0.15.3 b2c3d4e5f6g7 2 weeks ago 850MB postgres 15-alpine c3d4e5f6g7h8 3 weeks ago 158MB

4. Dify平台部署与调优

4.1 编写docker-compose.yml

创建以下配置文件:

version: '3' services: postgres: image: postgres:15-alpine environment: POSTGRES_PASSWORD: difysecurepass POSTGRES_USER: difyadmin POSTGRES_DB: dify_core volumes: - pg_data:/var/lib/postgresql/data redis: image: redis:6-alpine command: redis-server --requirepass difyredispass dify-api: image: langgenius/dify-api:0.15.3 depends_on: - postgres - redis environment: - DB_URL=postgresql://difyadmin:difysecurepass@postgres:5432/dify_core - REDIS_HOST=redis - REDIS_PASSWORD=difyredispass ports: - "5001:5001" dify-web: image: langgenius/dify-web:0.15.3 depends_on: - dify-api ports: - "3000:3000" volumes: pg_data:

4.2 启动与验证服务

执行部署命令:

docker-compose up -d

检查服务状态:

docker-compose ps

正常输出应显示所有容器状态为"Up"。

性能优化建议

  • 对于高并发场景,调整API服务的JVM参数:
    dify-api: environment: - JAVA_OPTS=-Xms2g -Xmx4g -XX:MaxRAMPercentage=75.0
  • PostgreSQL配置优化:
    ALTER SYSTEM SET shared_buffers = '2GB'; ALTER SYSTEM SET effective_cache_size = '6GB';

5. 高级配置与维护

5.1 内网域名解析配置

在没有DNS服务的环境中,需修改hosts文件:

sudo tee -a /etc/hosts <<EOF 127.0.0.1 dify.local EOF

5.2 数据备份方案

设置每日自动备份:

# 创建备份脚本 sudo tee /usr/local/bin/dify_backup.sh <<'EOF' #!/bin/bash BACKUP_DIR=/opt/dify_backups/$(date +%Y%m%d) mkdir -p $BACKUP_DIR docker exec -t $(docker-compose ps -q postgres) pg_dump -U difyadmin dify_core > $BACKUP_DIR/dify_db.sql docker-compose config > $BACKUP_DIR/docker-compose.yml EOF # 设置定时任务 sudo crontab -l | { cat; echo "0 2 * * * /usr/local/bin/dify_backup.sh"; } | sudo crontab -

5.3 日志收集方案

配置ELK栈进行日志分析:

# 创建Filebeat配置文件 sudo tee /etc/filebeat/filebeat.yml <<EOF filebeat.inputs: - type: container paths: - '/var/lib/docker/containers/*/*.log' output.logstash: hosts: ["logstash.internal:5044"] EOF

资源下载

所有部署所需的离线资源包已上传至百度网盘:

链接: https://pan.baidu.com/s/xxxxxx 提取码: xxxx 压缩包包含: - 完整Docker镜像集合(含校验文件) - VMware 17安装包及许可证 - Ubuntu 22.04.5 Server镜像 - 配套工具集(WinSCP等)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/26 9:06:20

号令天下:最有异性缘的数字组合

在数字能量学的体系里&#xff0c;不同尾数的手机号码被认为蕴含着不同的磁场属性&#xff0c;这些属性可能对个人的生活产生多方面影响。其中&#xff0c;尾数 48 的手机号码&#xff0c;被认为带有一定程度的负面磁场特征&#xff0c;或许会在财运、健康以及婚姻关系等层面带…

作者头像 李华
网站建设 2026/4/19 2:03:18

零门槛体验:TranslateGemma流式翻译极速上手教程

零门槛体验&#xff1a;TranslateGemma流式翻译极速上手教程 1. 引言&#xff1a;为什么选择TranslateGemma&#xff1f; 想象一下&#xff0c;当你需要翻译一份技术文档时&#xff0c;传统翻译工具要么需要等待全文输入才能开始工作&#xff0c;要么翻译质量参差不齐。而Tra…

作者头像 李华
网站建设 2026/4/19 0:18:51

树莓派上通过 ‌systemd‌ 配置 Python 程序开机自动启动的 ‌详细教程

以下是在树莓派上通过 ‌systemd‌ 配置 Python 程序开机自动启动的 ‌详细教程‌&#xff0c;包含 ‌服务文件编写、日志管理、权限设置、故障排查‌ 等关键步骤&#xff0c;确保你的 Python 程序能稳定运行。‌1. 准备工作‌‌1.1 确认 Python 程序可独立运行‌确保你的 Pyth…

作者头像 李华
网站建设 2026/4/18 14:41:35

md2pptx:当Markdown遇见结构化思维,演示文稿的范式转换

md2pptx&#xff1a;当Markdown遇见结构化思维&#xff0c;演示文稿的范式转换 【免费下载链接】md2pptx Markdown To PowerPoint converter 项目地址: https://gitcode.com/gh_mirrors/md/md2pptx 你是否曾思考过&#xff0c;为什么技术文档与演示文稿之间总存在难以逾…

作者头像 李华
网站建设 2026/4/19 11:18:20

NVIDIA Profile Inspector终极指南:解锁显卡隐藏性能的简单方法

NVIDIA Profile Inspector终极指南&#xff1a;解锁显卡隐藏性能的简单方法 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector是一款强大的显卡配置管理工具&#xff0c;它让你能…

作者头像 李华