环境



MacOS Sierra 10.12.4(Darwin Kernel Version 16.5.0) Docker version 17.03.1-ce



准备工作



1.安装docker,并正常运行 2.在docker官网找到搭建本地仓库的镜像registry. 官方在Docker hub上提供了registry的镜像,我们可以直接使用该registry镜像来构建一个容器,搭建我们自己的私有仓库服务。



具体方法



1.从docker hub拉去镜像
    docker pull registry:latest
    
2.创建本地镜像仓库存储路径
    mdkir path/to/registry
    
3.作为本地镜像仓库的存储路径需要是共享的
    Docker -> Preferences... -> File Sharing
  将文件夹添加到共享中
  
4.启动容器
    docker run -d -v path/to/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
  Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的path/to/registry目录挂载到该目录,即可实现将镜像保存到主机的path/to/registry目录了。
  
5.查看是否启动了registry服务 
    $ docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                                        NAMES
    0d01fbe06511        workspace           "/bin/bash"              23 minutes ago      Up 23 minutes       0.0.0.0:9005->2005/tcp, 0.0.0.0:30909->30303/tcp, 0.0.0.0:31212->30304/tcp   demo
    d89846d98bb5        registry:latest     "/entrypoint.sh /e..."   34 minutes ago      Up 34 minutes       0.0.0.0:5000->5000/tcp                                                       registry
    
    看到说明registry服务已经启动了,打开浏览器输入http://127.0.0.1:5000/v2,正常输出{}
    
5.push本地镜像进本地经常仓库
    docker tag workspace:latest 127.0.0.1:5000/workspace:latest
    docker push 127.0.0.1:5000/workspace
    
6.验证是否已经push到本地镜像仓库
    http://127.0.0.1:5000/v2/_catalog