零基础教程:在 Linux 上通过 Docker 快速部署 Dify

零基础教程:在 Linux 上通过 Docker 快速部署 Dify

Dify 是一款强大的 LLM 应用开发平台,它可以让你轻松构建自己的 AI 助手、知识库和工作流。本文将手把手教你如何在 Linux 服务器上从零开始搭建 Dify 环境。

一、 环境准备

在开始之前,请确保你的服务器满足以下最低配置要求:

  • CPU: 2 核及以上
  • 内存: 4 GB 及以上(推荐 8GB+,否则运行多个模型插件时可能会卡顿)
  • 磁盘: 至少 50 GB 可用空间
  • 操作系统: Ubuntu 20.04+, CentOS 7+ 或其他主流 Linux 发行版

1. 安装 Docker 和 Docker Compose

Dify 依赖 Docker 环境运行。如果你的服务器尚未安装,可以使用以下官方脚本快速安装:

bash 复制代码
# 安装 Docker
# Docker 版本建议 25.0.1
curl -fsSL https://get.docker.com | bash -s docker 

# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 安装 Docker Compose (V2版本)
# 现在的 Docker 通常自带 compose,可以检查一下
docker compose version

二、 下载 Dify 源码

我们直接从 GitHub 获取 Dify 的部署配置:
Dify历史版本

bash 复制代码
# 克隆项目仓库
git clone https://github.com/langgenius/dify.git

# 进入目录
cd dify/docker

三、 配置环境变量

Dify 使用 .env 文件来管理配置。我们需要从模板创建一个:

bash 复制代码
# 复制环境变量模板
cp .env.example .env

提示: 一般情况下,默认配置即可直接运行。如果你需要修改默认端口(默认 80 端口),可以用 vim .env 修改 NGINX_PORT 变量。

bash 复制代码
# HTTP port
NGINX_PORT=80

四、 启动部署

dify/docker 目录下执行启动命令。第一次启动时,Docker 会下载所需的镜像(包括 PostgreSQL, Redis, Weaviate 等),耗时视网络情况而定:

bash 复制代码
docker compose up -d

启动完成后,你可以通过以下命令查看容器状态:

bash 复制代码
docker compose ps

如果看到所有服务(如 api, worker, web, db 等)都显示 UpHealthy,说明部署成功。

更新容器:

bash 复制代码
# 停止并删除容器(不会删除数据,因为数据在 volumes 里)
docker compose down

# 重新启动
docker compose up -d

五、 初始化与访问

  1. 访问后台 :在浏览器中输入 http://你的服务器IP
  2. 设置管理员:第一次访问时,系统会提示你设置管理员账号和密码。
  3. 配置模型 :进入系统后,点击右上角的 "设置" -> "模型供应商" ,填入你的 OpenAI、Claude 或 DeepSeek 的 API Key。

六、 常见问题排查 (FAQ)

  • 访问不了页面?
    请检查服务器防火墙是否开放了 80 端口(或者你在 .env 中设置的端口)。
  • 镜像下载太慢?
    建议配置国内的 Docker 镜像加速器。
  • 如何更新 Dify?
bash 复制代码
cd dify/docker
docker compose down
git pull origin main
docker compose pull
docker compose up -d

结语

恭喜你!现在你已经拥有了一套属于自己的私有化 AI 开发平台。你可以在上面创建情感助手、接入本地知识库,甚至构建复杂的 AI 工作流。

相关推荐
Kina_C4 分钟前
Linux DNS 服务器-从高速缓存到辅助 DNS 部署指南
linux·运维·服务器·dns
suaizai_17 分钟前
TypeScript 7 正式发布!Vue 暂被 “拒之门外“ !!!
linux·运维·ubuntu
spider_xcxc1 小时前
Docker 实战:容器化多服务应用,Dockerfile 与 Compose 配置全解析
docker·云原生·eureka·虚拟化·容器化
慕伏白1 小时前
【慕伏白】Linux 系统如何根据端口号关闭进程
linux·运维·服务器
letisgo51 小时前
VMware Workstation + Ubuntu 26.04 LTS 小白运维部署手册
linux·运维·ubuntu
蓝创工坊Blue Foundry2 小时前
图片文字提取到 Excel:批量任务如何先定义要交付的字段
运维·服务器·开发语言·数据库·自动化·ocr·excel
IT探索2 小时前
Linux 查找文件指令总结
linux·算法
晚风吹长发2 小时前
Docker使用——Docker容器及相关命令
linux·运维·服务器·docker·容器·架构
ShiXZ2132 小时前
Docker Compose 安装与配置指南
运维·docker·容器
sulikey2 小时前
个人Linux操作系统学习笔记11 - 环境变量
linux·笔记·学习