码迷,mamicode.com
首页 > 其他好文 > 详细

docker搭建本地私有仓库

时间:2020-09-18 02:38:17      阅读:43      评论:0      收藏:0      [点我收藏+]

标签:mct   创建   bsp   图片   emctl   emc   拉取   错误   systemd   

环境说明:两台装有docker环境的centos7。安装docker的步骤可以参考:https://www.cnblogs.com/maohai-kdg/p/13474024.html

https://www.cnblogs.com/maohai-kdg/p/13597315.html

非常的详细

思路:搭建一个本地私有docker容器仓库,本机或局域网内其他机器访问本地私有仓库,从而在大量部署的时候,可以非常快的拉取镜像

操心你不懂的话不多说,反正我也不会看系列(手动微笑),直接上才艺。

创建宿主机存储目录,即放容器镜像的路径

mkdir -p /opt/data/registry

下载并启动一个registry容器,-v指定镜像文件本地存放路径

docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry

配置http权限支持

vim /etc/docker/daemon.json

{
"insecure-registries":["192.168.92.134:5000"] }

重启docker服务,重启registry服务

systemctl restart docker
docker restart private_registry

技术图片

 现在,测试上传和下载镜像到本地仓库

使用docker tag命令将镜像标记为192.168.92.134:5000/test

docker tag ubuntu:18.04 192.168.92.134/test

推送到本地仓库

docker push 192.168.92.134:5000/test

查看上传的镜像

curl http://192.168.92.134:5000/v2/_catalog 

技术图片

现在可以删除本地的test镜像,然后测试从本地仓库重新下载镜像

从本地仓库拉取镜像

docker pull 192.168.92.134:5000/test

docker images

技术图片

局域网内其它机器访问本地仓库

如果是直接拉取会出现以下问题

技术图片

 出现这问题的原因是:Docker自从1.3.X之后docker registry交互默认使用的是HTTPS,但是搭建私有镜像默认使用的是HTTP服务,所以与私有镜像交互时出现以上错误。

需要修改docker daemon的启动参数(需要访问仓库的其他机器),添加如下参数,表示信任这个私有仓库,不进行安全证书检查(centos7为例)

vim /usr/lib/systemd/system/docker.service

添加如下内容

--insecure-registry 192.168.92.134:5000

技术图片

修改好后重启docker服务和配置
systemctl daemon-reload
systemctl restart docker
 然后重启所有容器
docker setart $(docker ps -aq)

 然后再拉取,就好了

技术图片

其它机器也可以上传镜像到本地仓库

技术图片

技术图片

 

docker搭建本地私有仓库

标签:mct   创建   bsp   图片   emctl   emc   拉取   错误   systemd   

原文地址:https://www.cnblogs.com/maohai-kdg/p/13677650.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!