从零开始学习Dify-容器部署指南(一)

概述

Dify 是一款强大的开源 LLM 应用开发平台,它通过 Web UI、API 和数据集管理,使得基于 GPT 等大模型的应用搭建变得快速、可控且可扩展。它支持 LangChain、OpenAI、Azure OpenAI 等多种大模型后端,并集成了多模态输入、提示词工程、向量搜索等多种功能。本系列文章将带你一步步掌握 Dify 的使用方式,本篇是第一篇:容器化部署 Dify。我们将从零开始,使用 Docker 快速在本地或服务器上运行起 Dify,为后续开发打下坚实基础。

环境准备

Dify安装

3.1 代码拉取

打开终端并运行以下命令:

复制代码
git clone https://github.com/langgenius/dify.git
cd dify

该仓库中已经提供了标准的 docker-compose 配置文件,我们将在此基础上进行部署。

3.2 配置环境变量

Dify 使用 .env 文件进行配置。先复制示例配置文件:

复制代码
cp .env.example .env

然后根据自己的需求修改 .env 文件中的关键项,例如:

复制代码
# 指定数据库密码
MYSQL_ROOT_PASSWORD=yourpassword
# 指定 Redis 密码
REDIS_PASSWORD=yourredispassword
# 更改前端端口(默认是3000)
PORT=3000

此外,你需要配置 OpenAI 或其他 LLM 提供商的 API Key,在后续使用时也可以在 Dify 后台设置。

3.3 启动容器服务

执行以下命令,启动 Dify 全部服务:

复制代码
docker compose -f docker-compose.yml up -d

Dify 的 Docker Compose 配置包含以下服务:

|----------------|----------------|
| 服务 | 功能说明 |
| web | Dify 前端 Web 界面 |
| api | 后端 API 服务 |
| mysql | 数据库(MySQL) |
| redis | 缓存服务 |
| worker | 后台任务处理 |
| pgvector(可选) | 向量数据库扩展 |

首次启动后,Docker 会自动拉取镜像并创建容器,可能需要几分钟时间。

3.4 验证服务状态

通过以下命令检查容器状态:

复制代码
docker ps

查看日志以排查启动问题:

复制代码
docker compose logs -f {容器ID}
3.5访问 Dify

Dify Web 服务运行在 http://localhost:3000,你可以直接通过浏览器访问。

  • 配置管理员(首次)
  • 登录到后台
  • 进入后台

总结

通过本文,你已经完成了 Dify 的基本容器化部署。相比源码部署,使用 Docker 可以最大程度简化依赖管理、配置过程,尤其适合初学者和快速测试部署场景。

接下来你可以尝试:

  • 在后台配置 OpenAI API Key,并创建第一个 AI 应用
  • 使用内置数据集功能上传文档,体验语义搜索
  • 探索角色设定(Prompt Engineering)和多轮对话功能

下一篇文章将带你进入 Dify 的使用层面:如何配置你的第一个智能客服,敬请期待!

相关推荐
安替-AnTi1 天前
AI急速搭建网站:Gemini、Bolt或Jules、GitHub、Cloudflare Pages实战全流程!
ai·github·cloudflare·bolt·gemini·快速搭建网站
Learn Beyond Limits1 天前
Transfer Learning|迁移学习
人工智能·python·深度学习·神经网络·机器学习·ai·吴恩达
森之鸟1 天前
寻找AI——初识3D建模AI
ai·aigc
豌豆花下猫1 天前
Python 潮流周刊#118:Python 异步为何不够流行?(摘要)
后端·python·ai
YF云飞1 天前
数据仓库进化:Agent驱动数智化新范式
数据仓库·人工智能·ai
CodeCraft Studio2 天前
Aspose.Words for .NET 25.7:支持自建大语言模型(LLM),实现更安全灵活的AI文档处理功能
人工智能·ai·语言模型·llm·.net·智能文档处理·aspose.word
seegaler2 天前
AMD显卡运行GPT-OSS全攻略
gpt·ai·amd·gpt-oss
xuhe22 天前
关于nano banana模型实践的思考
ai
Honeysea_702 天前
容器的定义及工作原理
人工智能·深度学习·机器学习·docker·ai·持续部署
zandy10112 天前
LLM与数据工程的融合:衡石Data Agent的语义层与Agent框架设计
大数据·人工智能·算法·ai·智能体