Docker系列(四)Centos6.5 搭建私人镜像仓库 v2
2024-10-14 21:25:28
、下载、运行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系统
最新文章
- 关于 XMLHttpRequest对象的onreadyStateChange方法
- mybatis实战教程(mybatis in action)之五:与spring3集成
- Magento SSH 下载安装
- C语言基础学习
- Linux查找文件夹名
- 文件中的类都不能进行设计,因此未能为该文件显示设计器。设计器检查出文件中有以下类: FormMain --- 未能加载基类“WinForm.Win.FormsBase.FormMainBase”。请确保已引用该程序集并已生成所有项目
- 很受欢迎的Linux笔记(短小精悍)
- 【Java基础】Java中的多态
- C#当中的多线程_线程池
- TLV----Demo讲解
- Solr4.7从数据库导数据
- C# winform 按钮设置左边图标
- 团队作业4——第一次项目冲刺(Alpha版本)11.16
- 高性能C++网络库libtnet实现:IOLoop
- NPOI读取excel表,如果有公式取出的是公式,想要取数字怎么办?
- Day03_Python知识总结
- quartz集群分布式(并发)部署解决方案
- WPFの获取任意元素的位置
- K8S笔记
- python学习 day017打卡 类与类之间的关系
热门文章
- case when 和 decode 的比较分析
- python学习笔记:1.初识python
- UVa-156 Ananagrams(map映射)
- python的列表生成式
- python—函数
- SVN配置(服务器端及客户端)
- iBATIS typeHandler selectKey
- spring 集成redis客户端jedis(java)
- ECDSA host key for 192.168.0.101 has changed and you have requested strict checking.
- ImageUtil