Dify 基础入门01:Docker安装、Dify本地化部署

  • 最开始的几节内容都是针对小白零基础同学,有基础的就可以直接略过啦!

  • 对于零基础小白同学,我以下的内容会涉及到一些操作指令,目前看不懂也没关系,跟着流程操作,慢慢就能学懂。

  • 学员推荐奖励:每邀请 1 位新学员,你将获得 40% 课程抽成!

Docker安装

背景

在开发和运行各种项目时,环境配置通常是最让人头疼的问题之一。不同用户的计算机环境各不相同,那如何才能确保项目方开发的软件能在大多数计算机上顺利运行?

通常,项目方会提供 README 教程,主要有两种部署方式(Dify 也不例外):

1. 源码部署

通过 PowerShell 或者其他终端执行一系列命令进行安装和配置。但只要某个步骤出错,项目可能就无法运行,对 Linux 基础要求较高,调试起来非常麻烦。

2. Docker 部署

项目方会把整个运行环境打包成一个 Docker 容器(可以理解为一个“软件小盒子”)。用户只需安装 Docker 软件,并拉取该项目的镜像,就能一键部署,无需关心环境依赖问题。

Docker 是什么?

Docker 是一种 Linux 容器技术,提供了简单易用的容器化解决方案,是目前最流行的容器平台之一。

它的核心作用是 封装应用程序及其所有环境依赖项,打包成一个独立的文件。运行该文件后,系统会生成一个 隔离的虚拟环境(容器),让程序在其中运行,就像在真实物理机上一样,从而彻底解决环境配置问题。

Docker 的特点:

• 环境独立:无需担心本地环境配置冲突,任何支持 Docker 的设备都能运行相同的容器。

• 轻量级:相比传统虚拟机(VM),Docker 容器占用更少的系统资源,启动速度更快。

• 易于管理:支持版本控制、复制、共享、修改,像管理代码一样管理容器。

Docker 版本:

Docker 作为一个开源项目,提供两个版本:

• 社区版(CE):免费,适用于个人开发者和小型团队。

• 企业版(EE):包含额外的安全功能和企业级支持,适用于大型企业。

一般开发者使用 社区版(CE) 就可以,下面的介绍也基于 CE 版本

Docker 安装(Windows 10 示例)

1. 下载 Docker Desktop

• 官方下载地址:Docker Desktop for Windows

• 进入页面后,点击 Get started with Docker Desktop 下载 Windows 版本。

• 如果你还没有登录,会要求注册登录账号。

2. 安装 Docker Desktop

• 双击下载的 Docker for Windows Installer 安装文件。

• 按照提示一路 Next,最后点击 Finish 完成安装。

• 安装完成后,Docker 会自动启动,Windows 任务栏右下角会出现 小鲸鱼图标 🐳,表示 Docker 正在运行。

3. 验证 Docker 是否安装成功

• 打开 命令提示符(CMD) 或 PowerShell,运行以下命令查看版本信息:

docker version

• 运行测试镜像,检查 Docker 是否正常工作:

docker run hello-world

• 如果 Docker 运行正常,终端会输出以下内容(示例):

Hello from Docker!
This message shows that your installation appears to be working correctly.

• 如果启动过程中遇到 WSL 2 相关错误,请参考 WSL 2 安装指南 进行修复。

Dify本地化部署

上边为大家讲解了Docker的一些基础知识以及下载教学。现在,给大家详细讲解如何通过 Docker Compose 快速部署 Dify,如果你目前没有本地化需求,也可以直接使用 Dify 云平台。

前提条件

根据官方文档的说明,在正式开始之前,确保你的机器满足以下最低安装要求:

硬件要求

  • CPU:2 核以上

  • 内存:至少 4GB

操作系统和软件要求

根据不同的操作系统,具体的安装要求有所不同:

  • macOS:需要 macOS 10.14 或更新版本,并安装 Docker Desktop。请确保为 Docker 虚拟机分配至少 2 个虚拟 CPU 和 8GB 内存。

  • Linux:需要 Docker 19.03 及以上版本,Docker Compose 版本为 1.25.1 或更新。

  • Windows:需要启用 WSL 2,并安装 Docker Desktop。建议将源代码和数据存储在 Linux 文件系统中,以提高性能。

克隆 Dify 代码仓库

首先,我们需要把 Dify 源码克隆到本地环境,打开终端,选择好你想要克隆到的目录,使用以下命令:

git clone https://github.com/langgenius/dify.git

进入 Docker 目录

克隆完代码后,进入 Dify 的 Docker 目录:

cd dify/docker

复制环境配置文件

接着,复制 .env 配置文件,以确保环境变量设置正确,这个命令的意思是根据.env.example文件生成一个.env文件,.env.example是官方自带就有的:

cp .env.example .env

启动 Docker 容器

docker compose up -d

启动之前记得 Docker必须是开启状态,不然就会出现以下截图中的报错

开启Docker之后,再次运行这个命令就能正常拉取镜像了,如下展示:

检查容器状态

镜像拉取完成后,容器会自动启动,使用以下命令检查所有容器是否正常运行:

docker compose ps

你能看到包括 api、worker、web 在内的 3 个业务服务和 6 个基础组件 (weaviate、db、redis、nginx、ssrf_proxy、sandbox) 正在运行。

同时在Docker软件中,你也可以看到如下内容:

访问 Dify

一切就绪后,可以在浏览器中打开以下地址访问 Dify:

  • 本地环境

  • 初始化页面:http://localhost/install

  • 主页面:http://localhost

  • 服务器环境

  • 初始化页面:http://your_server_ip/install

  • 主页面:http://your_server_ip

访问成功后,就可以一步一步注册账号密码登录: