您的位置:首页 > 运维架构 > Docker

docker 如何搭建私有仓库(ubuntu 14.04,Docker版本1.6.4)详细介绍

2017-01-19 10:31 926 查看

docker 搭建私有仓库

本篇文章描述了多个机器可以在内网中访问自己的私有仓库,访问仓库时需要CA认证!最简单,最低保障私有仓库的安全性!在一个比较庞大的集群里,可以运行多个私有仓库的replica,然后借用代理来balance请求!

1.测试环境

本人测试环境为ubuntu 14.04,Docker版本1.6.4(版本稍微比较老,新版本安装流程是一样的).官网上说:You need to install Docker version 1.6.0 or newer.

在阿里云上开了两台机器:

CPU: 1核 内存: 1024 MB (I/O优化)
112.74.165.87(公)
172.18.222.77(私有)

112.74.166.40(公)
172.18.222.78(私有)

2. 安装docker(两台机器)

3.用openssl 创建CA证书

在172.18.222.77机器, root目录下:

$ mkdir certs

创建证书

$ openssl req \
-newkey rsa:2048 -nodes -keyout certs/domain.key \
-x509 -days 365 -out certs/domain.crt

会在certs目录下生成一个key和crt

4.启动容器用ca

在172.18.222.77机器, 拉取镜像

$ sudo docker pull registry

创建容器

docker run -d -p 5000:5000 --restart=always --name registry \
-v `pwd`/certs:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
registry

5.配置hosts文件(两台机器)

配置ip地址

$ vim /etc/hosts

将my.com地址配置为私有仓库的ip地址,在hosts里添加:

172.18.222.77  my.com

6.配置证书

将生成的证书cp到/etc/docker/certs.d/my.com:5000/ca.crt ,需要用域名my.com拉镜像的都需要配置.

docker最好重启一下

$ service docker restart

7.测试

在装有私有仓库执行以下操作

$ docker tag registry my.com:5000/registry
$ docker push my.com:5000/registry$ docker pull my.com:5000/registry

在另一台机器上执行

$ docker pull my.com:5000/registry

然后执行

$ docker images

输出

busybox latest c40e708042c6 3 days ago 1.11 MB
my.com:5000/buuu latest c40e708042c6 3 days ago 1.11 MB
my.com:5000/bu 1 c40e708042c6 3 days ago 1.11 MB
my.com:5000/registry latest 71606dce0120 2 weeks ago 37.62 MB

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  docker 私有仓库