小知识:Docker搭建本地私有仓库的详细步骤

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

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

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

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

环境准备

环境:两个装有docker的ubuntu虚拟机

虚拟机一:192.168.112.132 用户开发机

虚拟机二:192.168.112.136 用作私有仓库

此处我们准备了两个虚拟机,分别都安装了docker,其中132机器用作开发机,136机器用作registry私有仓库机器。环境准备好之后接下来我们就开始搭建私有镜像仓库。

搭建私有仓库

首先在136机器上下载registry镜像

?
1
$ sudo docker pull registry

下载完之后我们通过该镜像启动一个容器

?
1
$ sudo docker run -d -p 5000:5000 registry

 默认情况下,会将仓库存放于容器的/tmp/registry目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失,所以我们一般情况下会指定本地一个目录挂载到容器的/tmp/registry下,如下:

?
1
$ sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry

%小知识:Docker搭建本地私有仓库的详细步骤-猿站网-插图

可以看到我们启动了一个容器,地址为:192.168.112.136:5000

接下来我们就要操作把一个本地镜像push到私有仓库中

在132机器下pull一个比较小的镜像来测试(此处使用的是busybox)

?
1
$ sudo docker pull busybox

%小知识:Docker搭建本地私有仓库的详细步骤-1猿站网-插图

接下来修改一下该镜像的tag

?
1
$ sudo docker tag busybox 192.168.112.136:5000/busybox

%小知识:Docker搭建本地私有仓库的详细步骤-2猿站网-插图

接下来把打了tag的镜像上传到私服

?
1
$ sudo docker push 192.168.112.136:5000/busybox

%小知识:Docker搭建本地私有仓库的详细步骤-3猿站网-插图

可以看到push失败,具体结果如下:

复制代码 代码如下:
2015/01/05 11:01:17 Error: Invalid registry endpoint https://192.168.112.136:5000/v1/: Get https://192.168.112.136:5000/v1/_ping: dial tcp 192.168.112.136:5000: connection refused. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `–insecure-registry 192.168.112.136:5000` to the daemons arguments. In the case of HTTPS, if you have access to the registrys CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/192.168.112.136:5000/ca.crt 

因为docker从1.3.x之后默认docker registry使用的是https,所以当用docker pull命令下载远程镜像时,如果远程docker registry是非https的时候就会报上面的错误。

为了解决这个问题需要在启动docker server时增加启动参数

修改docker启动配置文件(此处是修改132机器的配置)ubuntu下配置文件地址为:/etc/init/docker.conf

在其中增加–insecure-registry 192.168.112.136:5000如下所示:

?
1
$ sudo vi /etc/init/docker.conf

%小知识:Docker搭建本地私有仓库的详细步骤-4猿站网-插图

修改完之后,重启docker服务

?
1
$ sudo restart docker

%小知识:Docker搭建本地私有仓库的详细步骤-5猿站网-插图

重启完之后我们再次运行推送命令,把本地镜像推送到私有服务器上

?
1
$ sudo docker push 192.168.112.136:5000/busybox

%小知识:Docker搭建本地私有仓库的详细步骤-6猿站网-插图

可以看到镜像已经push到私有仓库中去了,接下来我们删除本地镜像,然后从私有仓库中pull下来该镜像

%小知识:Docker搭建本地私有仓库的详细步骤-7猿站网-插图

删除了本地镜像,然后我们从私有镜像仓库中下载该镜像

?
1
$ sudo docker pull 192.168.112.136:5000/busybox

%小知识:Docker搭建本地私有仓库的详细步骤-8猿站网-插图

好了,到此本地搭建registry私有仓库就完结了,如有任何问题欢迎指正。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/u010397369/article/details/42422243

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:VMware虚拟机CentOS系统网络设置

2023-4-19 11:39:18

建站知识

小知识:docker上安装使用mysql镜像

2023-4-19 11:54:25

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索