这几天在部署Dify的社区版,用docker compose进行部署,看Dify里面的部署文档也是相当简单,只需要几个命令就可以执行完成了,但当开始执行的时候就发现会有各种问题。
Docker Compose最好是升级到最新的版本,我们以前用的版本是系统自带的,是1.x的版本,用docker-compose up -d之后就一直无法正常进行安装,于是把Docker和Docker Compose都进行了更新之后,这步开始正常跑了。
进行安装的时候发现,开始提示这个纠结的问题了。
Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
根据以前的经验,修改docker配置daemon.json里面的registry-mirrors就可以解决。不过这次好像不能,修改了之后,还是读取的docker.io的信息。
原来以为修改docker-compose.yaml里面的镜像配置,就可以解决这个问题。修改了几次,发现都不成功,最后在这个文件的上方找到一句话:
# ==================================================================
# WARNING: This file is auto-generated by generate_docker_compose
# Do not modify this file directly. Instead, update the .env.example
# or docker-compose-template.yaml and regenerate this file.
# ==================================================================
是要修改在项目里面的docker-compose-template.yaml。每个镜像里面的image都要加上代理之后,再执行generate_docker_compose命令。重新生成docker-compose.yaml文件。
最后再执行docker compose up -d就正常执行了。
不过Dify的镜像就真的是大,都超过1G了。