、下载、运行registry

下载registry镜像:

$ docker pull hub.c.163.com/library/registry

这个下载的过程有点长,耐心等待一下。O(∩_∩)O哈哈~。


$ docker images

registry镜像下下来后。通过以下的命令启动,并将registry的容器存储images的文件夹映射到宿主server的/opt/docker/registry文件夹。

$ docker run -d -p 5000:5000 -v /opt/docker/registry:/var/lib/registry registry
 执行push命令之后,/var/lib/registry registry文件夹下有一个v2文件夹,所有上传的镜像都会在此文件夹下。

启动以后在浏览器中输入http://主机IP:5000或者http://主机IP:5000/v2/_catalog。假设有显示就说明Docker私有仓库已经建好了。下一步将本地的images push到Docker私有仓库。

2、重新对已有镜像打tag

现将本地的image打一个tag,新image名称必须带有"主机IP:5000"。例如以下(我这里用127.0.0.1仅仅是举例)。

docker tag 5562556b14f9       127.0.0.1:5000/registry :latest
执行docker images查看是否打成功
REPOSITORY               TAG                 IMAGE ID            CREATED                   VIRTUAL SIZE
registry latest 5562556b14f9 8 days ago 422.9 MB
127.0.0.1:5000/registry latest 5562556b14f9 8 days ago 422.9 MB

3、push镜像


$ docker push 127.0.0.1:5000/registry

下次能够通过pull命令下载到其它server上,那可就快多了。

pull的时候记得带"主机IP:5000",不然还是去Docker hub上下载而不是私有仓库下载,例如以下命令。


$ docker pull 127.0.0.1:5000/registry

到此。私有仓库存取image就够了。

出现的问题:

问题一

  假设是save/load的image。会出现以下的错误。对于这种image。最好又一次build对应的Dockerfile。

$docker push 127.0.0.1:5000/nexus
The push refers to a repository [127.0.0.1:5000/nexus] (len: 1)
Sending image list
Pushing repository 127.0.0.1:5000/nexus (1 tags) 2014/10/27 14:50:37 HTTP code 400 while uploading metadata: {"error": "Missing key `id' in JSON"}

  问题二:  

  docker1.3.0以后的版本号。增加了认证机制,docker pull & push会报例如以下错误:

$ docker push 127.0.0.1:5000/registry
2014/12/02 11:33:04 Error: Invalid registry endpoint https://127.0.0.1:5000/v2/: Get https://127.0.0.1:5000/v2/_ping: EOF. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry 127.0.0.1:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/127.0.0.1:5000/ca.crt

修改/etc/sysconfig/docker(Ubuntu下配置文件地址为:/etc/init/docker.conf),增加启动选项(已有参数的在后面追加),之后重启docker,不添加报错,https证书问题。

OPTIONS='--insecure-registry 192.168.0.179:5000'    #CentOS 7系统
other_args='--insecure-registry 192.168.0.179:5000' #CentOS 6系统

最新文章

  1. 关于 XMLHttpRequest对象的onreadyStateChange方法
  2. mybatis实战教程(mybatis in action)之五:与spring3集成
  3. Magento SSH 下载安装
  4. C语言基础学习
  5. Linux查找文件夹名
  6. 文件中的类都不能进行设计,因此未能为该文件显示设计器。设计器检查出文件中有以下类: FormMain --- 未能加载基类“WinForm.Win.FormsBase.FormMainBase”。请确保已引用该程序集并已生成所有项目
  7. 很受欢迎的Linux笔记(短小精悍)
  8. 【Java基础】Java中的多态
  9. C#当中的多线程_线程池
  10. TLV----Demo讲解
  11. Solr4.7从数据库导数据
  12. C# winform 按钮设置左边图标
  13. 团队作业4——第一次项目冲刺(Alpha版本)11.16
  14. 高性能C++网络库libtnet实现:IOLoop
  15. NPOI读取excel表,如果有公式取出的是公式,想要取数字怎么办?
  16. Day03_Python知识总结
  17. quartz集群分布式(并发)部署解决方案
  18. WPFの获取任意元素的位置
  19. K8S笔记
  20. python学习 day017打卡 类与类之间的关系

热门文章

  1. case when 和 decode 的比较分析
  2. python学习笔记:1.初识python
  3. UVa-156 Ananagrams(map映射)
  4. python的列表生成式
  5. python—函数
  6. SVN配置(服务器端及客户端)
  7. iBATIS typeHandler selectKey
  8. spring 集成redis客户端jedis(java)
  9. ECDSA host key for 192.168.0.101 has changed and you have requested strict checking.
  10. ImageUtil