Dify部署及简单应用

前提条件

安装 Dify 之前, 请确保你的机器已满足最低安装要求:

1
2
CPU >= 2 Core
RAM >= 4 GiB

图片

关于如何在各操作系统上安装Docker,可查看Docker官方文档(https://www.docker.com/)

或参考文章:

如何在Linux、Windows、MacOS中安装Docker

蓁心的蓁意,公众号:时光瞭望塔如何在Linux、Windows、MacOS中安装Docker

获取代码

克隆 Dify 源代码至本地环境。

1
git clone https://github.com/langgenius/dify.git --branch 1.1.3

克隆代码需要系统已装Git,否则需要先安装。

访问 Git 官网,下载安装包安装:https://git-scm.com/downloads

关于Git安装可参考文章:

如何在Linux、Windows、MacOS中安装Git

蓁心的蓁意,公众号:时光瞭望塔如何在Linux、Windows、MacOS中安装Git

如果你的网络环境不好,无法直接克隆完整项目,可以试下以下的命令:

1
2
3
4
5
6
7
# 或者增加缓冲区大小
git config --global http.postBuffer 524288000
# 浅克隆
git clone --depth 1 https://github.com/langgenius/dify.git
# 获取所有历史
git fetch --unshallow

没有安装Git或者实在无法通过克隆下载的,可以直接压缩包进行解压。

Github 项目地址:https://github.com/langgenius/dify

图片

启动 Dify

进入 Dify 源代码的 Docker 目录

1
cd dify/docker

复制环境配置文件

1
cp .env.example .env

启动 Docker 容器

根据你系统上的 Docker Compose 版本,选择合适的命令来启动容器。你可以通过 $ docker compose version 命令检查版本,详细说明请参考 Docker 官方文档:

如果版本是 Docker Compose V1,使用以下命令:

1
docker compose up -d

如果版本是 Docker Compose V2,使用以下命令:

1
docker-compose up -d

运行命令后,你应该会看到类似以下的输出,显示所有容器的状态和端口映射:

1
`[+] Running 11/11` `✔ Network docker_ssrf_proxy_network  Created                                                                 0.1s`  `✔ Network docker_default             Created                                                                 0.0s`  `✔ Container docker-redis-1           Started                                                                 2.4s`  `✔ Container docker-ssrf_proxy-1      Started                                                                 2.8s`  `✔ Container docker-sandbox-1         Started                                                                 2.7s`  `✔ Container docker-web-1             Started                                                                 2.7s`  `✔ Container docker-weaviate-1        Started                                                                 2.4s`  `✔ Container docker-db-1              Started                                                                 2.7s`  `✔ Container docker-api-1             Started                                                                 6.5s`  `✔ Container docker-worker-1          Started                                                                 6.4s`  `✔ Container docker-nginx-1           Started                                                                 7.1s`

运行命令后,等待所有服务启动完成,第一次运行需要点时间。最后检查是否所有容器都正常运行:

1
docker compose ps

在这个输出中,你应该可以看到包括 3 个业务服务 api/worker/web,以及 6 个基础组件 weaviate/db/redis/nginx/ssrf_proxy/sandbox 。

1
2
3
4
5
6
7
8
9
10
NAME                  IMAGE                              COMMAND                   SERVICE      CREATED              STATUS                        PORTS
docker-api-1 langgenius/dify-api:0.6.13 "/bin/bash /entrypoi…" api About a minute ago Up About a minute 5001/tcp
docker-db-1 postgres:15-alpine "docker-entrypoint.s…" db About a minute ago Up About a minute (healthy) 5432/tcp
docker-nginx-1 nginx:latest "sh -c 'cp /docker-e…" nginx About a minute ago Up About a minute 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp
docker-redis-1 redis:6-alpine "docker-entrypoint.s…" redis About a minute ago Up About a minute (healthy) 6379/tcp
docker-sandbox-1 langgenius/dify-sandbox:0.2.1 "/main" sandbox About a minute ago Up About a minute
docker-ssrf_proxy-1 ubuntu/squid:latest "sh -c 'cp /docker-e…" ssrf_proxy About a minute ago Up About a minute 3128/tcp
docker-weaviate-1 semitechnologies/weaviate:1.19.0 "/bin/weaviate --hos…" weaviate About a minute ago Up About a minute
docker-web-1 langgenius/dify-web:0.6.13 "/bin/sh ./entrypoin…" web About a minute ago Up About a minute 3000/tcp
docker-worker-1 langgenius/dify-api:0.6.13 "/bin/bash /entrypoi…" worker About a minute ago Up About a minute 5001/tcp

通过这些步骤,你应该可以成功在本地安装Dify。

访问平台

先前往管理员初始化页面设置设置管理员账户:

# 本地环境

http://localhost/install

# 服务器环境

http://your\_server\_ip/**install**

图片

设置完成后,就可以访问主页面登录了:http://localhost

图片

创建你的第一个 AI 应用

1. 创建应用

点击”创建新应用”,选择应用类型

图片

2. 配置应用

添加模型

模型需要在设置中预先设置好,才可以在应用中选择,如下图:

图片

从”从添加更多模型供应商“中选择需要添加模型,这里我已经选择了通义千问,配置好apiKey之后就可以使用了,关于apiKey的获取,可以去阿里云百炼平台注册申请,前期会有免费额度。这里如果选择DeepSeek模型,apiKey是到DeepSeek官网注册申请,大家按需选择即可。

如下图所示,默认打开了千问下所有模型,我们可以手工关闭不需要的:

图片

回到应用配置页面,右上角选择模型,如下图所示:

图片

关于大模型参数那些,这里不展开描述,后面有机会再开个文章介绍,或者直接看官网。

这里为了演示,我就让大模型帮我生成提示词了,生成一个翻译助手的提示词,让在建的应用帮我们做语言翻译,如下图所示:

图片

3、调试和发布

可以从下面文章高原英文做测试:

测试文章

RhettLeo,公众号:时光瞭望塔读《The Little Prince》小王子-01

图片

让ai助手翻译上面英文,如下图所示:

图片

可以看到调试结果。调试没问题之后就可以发布应用了,如下图所示:

图片

点击运行,跳转新页面,展示一个聊天对话框,如下图所示:

图片

开始对话:

图片

也可以将应用以iframe嵌入网页、h5中,如下图所示:

图片

图片

4、更新 Dify

如果开源社区Dify有更新,我们可以按照如下方式进行更新

进入 dify 源代码的 docker 目录,按顺序执行以下命令:

1
`cd dify/docker``docker compose down``git pull origin main``docker compose pull``docker compose up -d`

如果不是git克隆,就需要再重新下载最新代码解压。

同步环境变量配置 (重要!)

如果 .env.example 文件有更新,请务必同步修改你本地的 .env 文件。

检查 .env 文件中的所有配置项,确保它们与你的实际运行环境相匹配。你可能需要将 .env.example 中的新变量添加到 .env 文件中,并更新已更改的任何值。

自定义配置

编辑 .env 文件中的环境变量值。然后重新启动 Dify:

1
`docker compose down``docker compose up -d`

完整的环境变量集合可以在 docker/.env.example 中找到。

以上便是部署Dify的全部过程,如有纰漏,欢迎指正。大家可以参考,部署起来后就可以愉快地玩耍了,可以在自己的环境上验证自己的AI idea,在AI时代,想法很重要,动起来!

参考资料:

Dify官方文档:https://docs.dify.ai/zh-hans/getting-started/install-self-hosted/docker-compose

转载

本文转载自时光瞭望塔