因为数据安全问题,linux上的docker swarm集群不能直接使用docker pull拉取镜像,每次只能拷贝上传,且三台机器都需要上传镜像,非常耗时间,所以想使用 docker registry构建个本地镜像仓库。
构建步骤:
1:首先需要下载registry镜像,https://hub.docker.com/_/registry/
执行:docker pull registry
2:将上述下载的镜像上传到docker swarm集群任意节点服务器上
3:修改三台服务器docker配置,修改下镜像源并重启docker服务
vim /etc/docker/daemon.json
{
"insecure-registries": [ "启动registry服务的服务器ip:registry镜像映射端口"]
}
如果没有上述文件,则创建即可。注意,上述配置,在三台服务器上都需要修改。
4:启动registry镜像:
docker run -d -p 5000:5000 --restart always --name registry registry:2
注意镜像名称修改为你下载的registry镜像,端口号可以自行根据是否和其他镜像冲突调整,只要和上面配置
5:重启docker
systemctl restart docker
6:之后本地镜像仓库就建好了,以后只需要上传镜像到某一台,之后执行
docker push 镜像名
就可在所有集群服务器上使用镜像了。