• Centos7下使用Docker搭建本地私有仓库


    和Mavan的管理一样,Dockers不仅提供了一个中央仓库,同时也允许我们使用registry搭建本地私有仓库。使用私有仓库有许多优点:

    一、节省网络带宽,针对于每个镜像不用每个人都去中央仓库上面去下载,只需要从私有仓库中下载即可;

    二、提供镜像资源利用,针对于公司内部使用的镜像,推送到本地的私有仓库中,以供公司内部相关人员使用。

    接下来我们就大致说一下如何在本地搭建私有仓库。

    1.拉取镜像仓库

    docker  pull  registry 

    2.查看所有镜像

     docker images

    3.启动镜像服务器registry

    首先在在主机上新建一个目录,供存储镜像

    cd /usr/local/
    mkdir docker_registry 

    启动镜像

    docker run -d -p 5000:5000 --name=jackspeedregistry --restart=always --privileged=true  -v /usr/local/docker_registry:/var/lib/registry  docker.io/registry

    解释:
      -p 5000:5000 端口
      --name=jackspeedregistry 运行的容器名称
      --restart=always 自动重启
       --privileged=true centos7中的安全模块selinux把权限禁止了,加上这行是给容器增加执行权限
      -v /usr/local/docker_registry:/var/lib/registry 把主机的/usr/local/docker_registry 目录挂载到registry容器的/var/lib/registry目录下,假如有删除容器操作,我们的镜像也不会被删除
      docker.io/registry  镜像名称
    查看启动的容器

    4.从公有仓库拉取一个镜像下来,然后push到私有仓库中进行测试

    当前用nginx镜像做测试

    docker pull  nginx 
    docker images

    5.给docker注册https协议,支持https访问

    vim /etc/docker/daemon.json

    如果daemon文件不存在,vim会自己创建一个,假如一下代码,
      {
      "insecure-registries":["主机的IP地址或者域名:5000"],
       "registry-mirrors": ["https://registry.docker-cn.com"]
      }
    注释:
      insecure-registries----->开放注册https协议
      registry-mirrors----->仓库源

    6.新建一个tag,把docker.io/nginx名称变成域名或者IP/镜像名称

    docker tag docker.io/nginx ip或者域名:5000/nginx

    推送到本地仓库

    docker push ip或者域名:5000/nginx

    7.进入刚才新建的nginx仓库目录得到

    删除刚刚tag的镜像 (192.*******:5000/nginx刚才创建的镜像的tag)

    docker rmi 196.*******:5000/nginx
    docker rmi  nginx 
    docker images

    拉取刚刚自己创建的镜像

    docker pull 192.168.116.131:5000/nginx:1.2

    已经完成

  • 相关阅读:
    springboot运行在eclipse报异常的问题
    Python random模块
    MySQL大小写敏感
    正则表达式详解
    Linux grep命令详解
    Linux printf命令详解
    Linux awk命令详解
    MySQL表介绍
    Linux sed命令详解
    Linux grep命令详解
  • 原文地址:https://www.cnblogs.com/heian99/p/12182017.html
Copyright © 2020-2023  润新知