Docker registry 的作用
我们通常使用的 docker 镜像,都是在 docker hub
上面拉取的,配置的国内镜像也是复制了一份 docker hub
上面的镜像,如果我们有的隐私项目不想对外共享,或者公司内部,没有连接外网,这时就非常的需要 docker 私有镜像仓库,我们可以配置一个镜像仓库专门为自己或者公司服务。
Docker registry 安装
# 安装 docker registry 最新镜像
docker pull registry
# 运行容器
docker run -d -p 5000:5000 --name=registry registry
安装成功!登录http://47.100.240.146:5000/v2/_catalog
IP地址:5000/v2/_catalog
查看仓库中的镜像
确保仓库的宿主机 5000
端口打开,可以用 telnet + IP + 端口号
测试
如果无法访问,可以尝试关闭防火墙:
# 关闭防火墙
systemctl stop firewalld
# 重启 docker 服务
systemctl restart docker
连接docker registry 配置
在需要连接私有镜像的主机上配置
创建配置文件
{
"insecure-registries": ["47.100.240.146:5000"]
}
如果有多个镜像地址,直接另起一行进行添加
重启docker 服务
systemctl restart docker
测试
# 拉取 hello-world 测试镜像
docker pull hello-world
# 为镜像打标记
docker tag hello-world:latest 47.100.240.146:5000/hello-world:latest
# 推送镜像
docker push 47.100.240.146:5000/hello-world:latest
查看镜像仓库的网页:
# 删除刚刚打标记的镜像,重新从镜像仓库中拉取新的镜像
docker pull 47.100.240.146:5000/hello-world:latest
# 格式:docker pull IP:POST/镜像名:版本号
细节决定成败!
个人愚见,如有不对,恳请斧正!