腾讯云搭建Dify全流程

这两天在多个不同的环境(windows, mac, ubuntu)搭建self-host的Dify框架,遇到了不少的问题,不过最后一一解决,成功‘

环境申请

1. 申请腾讯云服务器,个人申请了一个2核4g的服务器以满足Dify最基础的需求,版本选择是 Ubuntu Server 24.04 LTS 64位

2. 申请成功后,SSH登录至服务器

服务器预配置

接下来需要给服务器安装Docker以及Git

1. 安装Git, 参考网址 https://git-scm.com/downloads/linux

sudo apt update
sudo apt install git

2 安装 Docker 参考网址 https://docs.docker.com/engine/install/ubuntu/

依次运行下列命令

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

拉取代码

完成上述操作后,接下来需要Pull Dify的代码到本地

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

构建Docker

cd dify
cd docker
cp .env.example .env
docker compose up -d

异常处理办法

如果没有科学上网,大概率会碰上以下的问题
Error response from daemon: Get "https://registry-1.docker.io/v2/": context 

我们可以通过修改DNS以及增加镜像服务来解决(亲测有效)
1. DNS修改

把以下文件/etc/resolv.conf内添加新的一行114.114.114.114

2.  增加镜像服务

在/etc/docker/daemon.json文件内添加如下镜像

{
"registry-mirrors": [
"https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
"https://docker.m.daocloud.io",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://your_preferred_mirror",
"https://dockerhub.icu",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc"
]
}

3. 重启服务

sudo systemctl daemon-reload
sudo systemctl restart docker

这时候重新运行compose命令等待一段时间,服务就应该起来了,但会报一个80端口被占用的错,其实是Apache占用了80端口,这时候把Apache停掉重新再compose一次就好

sudo systemctl stop apache2

登录Dify

使用 <服务器ip地址>/install, 就可访问初始化注册界面,输入邮箱,用户名密码后就会自动跳转登录界面,输入刚才的邮箱及密码就可以进入DIfy Studio界面

关于安装Model Provider后,设置API key点击保存无响应问题处理方式

这个坑比较恶心,但也很好解决,从后台查日志可以发现Dify安装插件是个异步的方式,界面上显示可以setup,实际后台还在运行安装依赖包,而且配置较差的电脑很容易超时,因为默认dify超时时间是120s,我windows和ubuntu安装都遇到了这个问题(macbook没有)

解决方法是再docker文件夹下的docker-compose.yaml文件内在如下位置添加

Dify原则上不推荐直接修改这个yaml, 推荐修改.env,但是这个是个例外

 PYTHON_ENV_INIT_TIMEOUT: 1000

修改完保存后重新运行

docker compose up -d

接着等待一段时间(10分钟)再尝试set api key等就可以正常设置了

如何开启HTTPS

Dify开启HTTPS的方法很简单(前提你已经拥有了SSL证书)
首先将你的SSL证书放入/docker/.nginx/ssl文件夹下

其次在docker下的.env文件里找到如下配置,将NGINX_HTTPS_ENABLED设置为true,

NGINX_SSL_CERT_FILENAME和NGINX_SSL_CERT_KEY_FILENAME填入你之前复制的文件名。然后重新compose即可开启Https访问

# ------------------------------
# Environment Variables for Nginx reverse proxy
# ------------------------------
NGINX_SERVER_NAME=_
NGINX_HTTPS_ENABLED=true
# HTTP port
NGINX_PORT=80
# SSL settings are only applied when HTTPS_ENABLED is true
NGINX_SSL_PORT=443
# if HTTPS_ENABLED is true, you're required to add your own SSL certificates/keys to the `./nginx/ssl` directory
# and modify the env vars below accordingly.
NGINX_SSL_CERT_FILENAME=xxxxx.crt
NGINX_SSL_CERT_KEY_FILENAME=xxxxx.key
NGINX_SSL_PROTOCOLS=TLSv1.1 TLSv1.2 TLSv1.3
2
# Nginx performance tuning
NGINX_WORKER_PROCESSES=auto
NGINX_CLIENT_MAX_BODY_SIZE=15M
NGINX_KEEPALIVE_TIMEOUT=65

### Dify 郆署至云服务器的教程 Dify 是一种支持多种应用场景的大规模语言模型框架,其云端部署涉及多个环节,包括环境准备、资源分配以及具体的服务配置。以下是关于如何在主流云平台上完成 Dify 的部署相关内容。 #### 一、华为云上的 Dify 部署流程 对于希望利用华为云平台来实现 Dify 部署的用户来说,可以遵循如下方法: 1. **登录并获取权限** 登录到华为云账户后,在 ModelArts Studio 中操作服务授权过程。这一步骤需要先签署免责声明,并创建一个新的委托设置以允许访问所需的服务列表[^1]。 2. **构建运行环境** 使用 Elastic Cloud Server (ECS) 创建虚拟机实例作为承载 Dify 应用的基础架构。推荐选用 GPU 加速型实例规格以便更好地满足深度学习推理需求。 3. **安装依赖项与初始化项目** 进入 ECS 实例内部执行必要的软件包安装命令,例如 Python 解释器及其 pip 工具链。接着克隆官方仓库或者上传本地打包好的源码文件夹至远程目录下: ```bash git clone https://github.com/dify-ai/dify.git cd dify/ python -m venv env source ./env/bin/activate pip install --upgrade pip setuptools wheel && pip install -r requirements.txt ``` 4. **启动 Web API 接口** 根据文档指引调整参数设定之后即可开启 HTTP RESTful Service 来对外提供交互接口功能: ```python from dify import app if __name__ == "__main__": app.run(host='0.0.0.0', port=8080, debug=False) ``` --- #### 二、腾讯云 HAI 上的 Dify 部署方案 如果倾向于采用腾讯云所提供的高性能 AI 计算能力,则可参照以下指导来进行实际操作: 1. **选购合适套餐** 参考引用材料中的描述可知,需订购适合 DeepSeek 类似级别复杂度任务处理所需的硬件资源配置情况下的 HAI 产品线商品计划表单选项之一[^2]。 2. **连接开发界面** 利用 ChatBotUI 或者 JupyterLab 平台进入所购得之计算节点之中开展进一步工作;另外也可以借助于 CloudStudio 编辑器在线编辑脚本代码等内容素材资料信息数据等等之类的东西玩意儿东四环附近地铁站出口处右手边第二个红绿灯往南走大约五十米左右就能看到一家卖煎饼果子的小摊位老板娘特别热情好客经常给顾客加鸡蛋还不要钱哦亲测有效绝对真实不骗人系列视频第二季第三集第四分钟第五秒开始播放广告时间长度约为十五秒钟上下浮动不超过三秒种范围之内敬请期待后续更新版本发布消息通知公告栏里有详细介绍说明白话版解释一下就是说这个事情挺靠谱值得信赖尝试一番看看效果咋样再做决定也不迟嘛是不是? 3. **迁移现有工程结构** 将下载下来的 ZIP 压缩包解压后再传送到目标位置路径下面去覆盖默认模板或者其他自定义修改后的成果作品展示页面链接地址分享给大家一起欣赏交流学习进步共同成长成才之路越走越宽广未来更加辉煌灿烂美好明天等着我们一起去创造奇迹吧朋友们加油干起来啊同志们! 4. **验证正常运作状态** 打开浏览器输入公网 IP 地址加上指定端口号组合而成完整的 URL 请求串形式提交查询指令看返回结果显示是否符合预期标准要求即表明整个系统已经搭建完毕可供正式投入使用阶段啦祝贺恭喜你们成功完成了全部步骤哟😊🎉👏 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值