1. 划出4G做虚拟内存
fallocate -l 4G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' | tee -a /etc/fstab
2. 低的数值会让内核更倾向于保持数据在物理内存中,默认是60
sudo sysctl vm.swappiness=80
3. 安装docker 国内镜像 新版本内置docker compose
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
4. 安装完成启动并查看状态
systemctl enable --now docker
systemctl status docker
5. 查看是默认否安装了docker compose
docker compose version
这里内置的是docker compose 不是docker-compose
6. 克隆dify
sudo dnf install git -y #安装git
git clone https://gitee.com/ai-learning-hub/dify.git
或最新版
git clone --branch 1.3.1 --depth 1 https://gitee.com/ai-learning-hub/dify.git
第一个下载的是0.15.1版本,比较小,可以再2g内存中运行; 第二个1.3.1版比较新而且大,小编使用的这个,成功部署。 此外还有最新版:
git clone https://gitee.com/dify_ai/dify.git
太大了2g的内存带不动,部署成功但是访问不了,内存不足,系统崩溃。
7. 进入dify的docker目录执行 cp .env.example .env
cd dify/docker
cp .env.example .env
后面的操作步骤都是在dify/docker中执行。
8. 配置国内镜像源
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors":[
"https://9cpn8tt6.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"https://mirror.ccs.tencentyun.com",
"https://docker.1panel.live",
"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"
]
}
EOF
9. 重新加载 docker 配置并重启
systemctl daemon-reload
systemctl restart docker
10. 启动dify
docker compose up -d
启动后会拉取一些镜像(时间较长),如下图
如果拉取失败了,继续执行 docker compose up -d,
下载完成后如图所示:
使用 docker ps 可以查看容器的进程:
11. 使用dify
完成上面步骤之后,因为 dify 使用的 Nginx 的80端口做了代理,所以在浏览器输入 http://云服务器的IP/install 即可访问 dify 的管理后台