在 Gitee 或 GitCode 上克隆 Dify 项目源码并启动 Docker 环境

在 Gitee 或 GitCode 上克隆 Dify 项目源码并启动 Docker 环境

第一步:克隆源码仓库

首先,使用以下命令将项目克隆到本地,确保您已经在 Gitee 或 GitCode 上配置了 SSH 密钥:

bash 复制代码
git clone git@gitcode.com:Mingcai_Xiong/dify-copy-github.git

完成克隆后,进入项目目录:

bash 复制代码
cd ~/dify-copy-github/docker

第二步:下载 Dify 所需的 Docker 镜像

在拉取镜像之前,建议您配置 Docker 的镜像加速,以加快下载速度。打开或创建 /etc/docker/daemon.json 文件,添加如下内容:

json 复制代码
{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://ueo0uggy.mirror.aliyuncs.com",
    "https://docker.m.daocloud.io",
    "https://cf-workers-docker-io-apl.pages.dev",
    "http://95.169.25.181"
  ],
  "insecure-registries" : ["124.222.237.211:5000"]
}

保存后,重启 Docker 服务:

bash 复制代码
sudo systemctl restart docker

接下来,您可以使用以下命令查看 docker-compose.yaml 中需要拉取的镜像:

bash 复制代码
cat docker-compose.yaml | grep 'image:'

输出示例:

bash 复制代码
image: langgenius/dify-web:0.10.0
image: postgres:15-alpine
image: redis:6-alpine
image: langgenius/dify-sandbox:0.2.10
image: ubuntu/squid:latest
image: certbot/certbot
image: nginx:latest
image: semitechnologies/weaviate:1.19.0
image: langgenius/qdrant:v1.7.3
......

现在,您可以拉取所有这些镜像:

bash 复制代码
docker compose pull

第三步:启动项目

  1. 复制环境配置文件:
bash 复制代码
cp .env.example .env
  1. 启动 Docker 容器:
bash 复制代码
docker compose up -d

此命令将在后台启动所有定义的服务。如果您只想构建特定服务(如 nginx),且不想重新构建其依赖项,可以使用以下命令:

bash 复制代码
docker compose up -d --build --no-deps nginx
参数解释
  • --build:强制重新构建镜像,即使镜像已经存在。
  • --no-deps:不启动此服务的依赖项,仅启动指定的服务。

总结

通过上述步骤,您已经成功地克隆了 Dify 的源码、配置了 Docker 镜像加速、拉取了所需的镜像并启动了项目。

相关推荐
liguojun202511 小时前
智慧破局:重构体育场馆的运营与体验新生态
java·大数据·人工智能·物联网·重构·1024程序员节
Yupureki2 天前
《算法竞赛从入门到国奖》算法基础:入门篇-前缀和
c语言·数据结构·c++·算法·1024程序员节
CoderYanger2 天前
动态规划算法-01背包问题:50.分割等和子集
java·算法·leetcode·动态规划·1024程序员节
CoderYanger2 天前
动态规划算法-两个数组的dp(含字符串数组):48.最长重复子数组
java·算法·leetcode·动态规划·1024程序员节
金融小师妹2 天前
美联储议息夜:基于多智能体决策分歧模型的“鹰派降息”推演
人工智能·深度学习·1024程序员节
金融小师妹2 天前
基于NLP政策文本分析与多智能体博弈模拟的FOMC决策推演:“美联储传声筒”下的利率路径分歧
大数据·人工智能·深度学习·1024程序员节
打码人的日常分享3 天前
IPD项目质量体系管理方案
大数据·运维·人工智能·信息可视化·1024程序员节
CoderYanger4 天前
动态规划算法-两个数组的dp(含字符串数组):42.不相交的线
java·算法·leetcode·动态规划·1024程序员节
CoderYanger4 天前
动态规划算法-两个数组的dp(含字符串数组):43.不同的子序列
java·算法·leetcode·动态规划·1024程序员节
CoderYanger5 天前
动态规划算法-两个数组的dp(含字符串数组):41.最长公共子序列(模板)
java·算法·leetcode·动态规划·1024程序员节