前言

  • 这篇博客描述一下如何在VMware中安装docker,并通过docker部署dify,以及这个过程中遇到的一些问题的解决方案。同时你也可以在本地windows中安装docker,但是docker只能安装在Linux系统,所以你需要在本地windows中配置WSL/Hyper-V,搭建一个运行再Windows中的Linux子系统,但是docker-destop的默认安装位置在系统盘,不能指定安装目录,并且windows操作系统和WSL/Hyper-V兼容性并不是很好,部分电脑可能配置完WSL后,电脑无法正常关机的情况。
  • 所以我在VMware中搭建了centos系统,然后在centos系统中安装了docker,最后通过docker部署dify
  • 这篇博客就不赘安装VMware和搭建centos7,可以参考其他教程,这里只描述如何在centos中部署dify

安装docker

  1. 检查centos内核版本,Docker要求CentOS系统的内核版本高于3.10,验证CentOS版本是否支持Docker。
    在这里插入图片描述
  2. 确保yum工具更新到最新
sudo yum update
  1. 查看当前系统是否已安装docker,已安装的话卸载后再重新安装
docker -v  # 查看系统是否安装docker,有的话执行下面两行代码卸载旧版本
sudo yum remove docker docker-client docker-common docker-engine -y
sudo rm -rf /var/lib/docker
  1. 安装docker的三个依赖软件包,同样用yum工具进行安装
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 配置yum国内镜像源,加速docker软件包的下载,国内最好配一下
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  1. 安装docker引擎
sudo yum install -y docker-ce docker-ce-cli containerd.io
  1. 启动docker并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
  1. 验证是否安装成功
docker -v
docker --version

安装git

Git就无需多言,是我们工作中最常用的代码管理工具,这里安装Git是用来一会把dify的源代码拉到我们centos本地,安装git也很简单,直接通过yum工具一键安装即可。

sudo yum install git -y

部署dify

  1. 安装完docker和git后,部署dify也非常简单,先找到dify的gitHub官方网址dify github网址,然后通过git将源码目录拉取到本地,一般放到 /usr/local 这个目录,当然,也可以直接下载源码zip压缩包,复制到目录后解压也可以。
git clone https://github.com/cdg1921/dify_annotation_and_analysis.git
  1. 配置环境变量,Dify 通过 .env文件管理配置。你需要复制示例文件并根据需要进行修改
# 进入 Docker 配置目录
cd dify/docker
# 复制环境变量示例文件
cp .env.example .env
  1. 启动 Docker 容器
    如果之前没有下载相关镜像,会先下载相关镜像,大概得10几分钟
sudo docker compose up -d

-d参数表示在后台运行容器。

docker compose ps  #查看dify所有容器运行状态
  1. 本地浏览器访问dify, http://你的虚拟机ip地址:80(不输入80默认就是80端口),可以通过ifconfig命令查看你虚拟机ip地址,看ens33网卡

下载组合镜像网络超时如何解决

如果执行docker compose up -d下载dify组合镜像超时时,直接在docker配置文件配置docker国内镜像加速器,位置在/etc/docker/daemon.json,直接将下面的内容复制进去即可,然后重新执行docker compose up -d重新部署就可以了

docker compose up -d

在这里插入图片描述

[root@localhost docker]# cat daemon.json 
{
    "data-root": "/home/data/docker",
    "registry-mirrors": [
      "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",
      "https://docker.13140521.xyz"
    ]
  }


磁盘目录不足如何解决

参考我的另外一篇博客
https://blog.csdn.net/qq_38673558/article/details/150704447?fromshare=blogdetail&sharetype=blogdetail&sharerId=150704447&sharerefer=PC&sharesource=qq_38673558&sharefrom=from_link

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐