docker-私有镜像仓库搭建

DockerHub 官方仓库,有的时候,我们公司内部开发,一些镜像文件,受限于网络,而且公司内部自己的项目也不希望透露出去,就像你用git一样,如果你不想交钱又不想用gitHub的公共代码管理,你就得搭建一个属于自己的git仓库,比如gitLab

那么docker的镜像存放仓库,我们同样的可以搭建出一个私有的镜像仓库,可以放在公司的内网。

第一步 :下载registry镜像文件

   docker pull registry

第二部:运行这个镜像

sudo docker run -d -v /home/hzq/registry:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest
命令详细解释:

  • -v /home/hzq/registry:/var/lib/registry 默认情况下,会将仓库存放于容器内的/var/lib/registry目录下,指定本地目录挂载到容器。

  • -p 5000:5000 端口映射

  • --restart=always1 在容器退出时总是重启容器,主要应用在生产环境

  • --privileged=true 在CentOS7中的安全模块selinux把权限禁掉了,参数给容器加特权,不加上传镜像会报权限错误OSError: [Errno 13] Permission denied: ‘/tmp/registry/repositories/liibrary’)或者(Received unexpected HTTP status: 500 Internal Server Error)错误

  • --name registry 指定容器的名称

第四部:测试push镜像文件

    4.1:给你的仓库中的镜像,打个标签


比如我要对图中的我的镜像列表里的tomcat打上一个tag,然后我准备上传我的私有镜像仓库里

    执行命令:docker tag [你的镜像id] locahost:5000/tomcat

        其实这一窜: locahost:5000/tomcat      就是你要上传的镜像文件在你的私有镜像里的镜像名字

4.2:push你的镜像

        docker push localhost:5000/tomca

4.3 查看仓库的私有镜像


执行命令  curl http://locahost:5000/v2/_catalog

可以很明显的看到我们的镜像进去了,那个 tomcat ,我还漏了一个 字母 t 


你可能感兴趣的:(分布式架构-容器化时代)