利用阿里云ECS服务器构建Docker公有仓库


Docker仓库主要用于存放Docker镜像,Docker仓库分为公共仓库和私有仓库
私有仓库:是在局域网中搭建的docker仓库
公有仓库:是在公网中搭建的docker仓库
注:我们今天利用一台阿里云ECS服务器搭建一个公有仓库

仓库搭建流程

实验环境:一台ECS服务器 39.97.176.117

1、安装、启动docker

yum install docker -y
systemctl restart docker
docker -v

2、docker下载registry、busybox

registry用途:官方提供Docker Registry来构建仓库
busybox用途:我们需要把这个镜像上传到自己构建的仓库中,还可以从仓库下载它

docker search busybox
docker pull docker.io/busybox
docker search registry
docker pull docker.io/registry

3、给busybox镜像重命名

docker tag docker.io/busybox 39.97.176.117:5000/busybox:v2

4、启动registry镜像

docker run -itd -p 5000:5000 -v /data/registry/:/var/lib/registry/ docker.io/registry

5、上传busybox镜像到启动的registry容器中

docker push 39.97.176.117:5000/busybox:v2
(1)结果报错:
The push refers to a repository [39.97.176.117:5000/busybox]
Get https://39.97.176.117:5000/v1/_ping: http: server gave HTTP response to HTTPS client
(2)编辑docker主配置文件:/etc/sysconfig/docker

添加以下信息:

#允许不安全仓库39.97.176.117
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --insecure-registry 39.97.176.117:5000'
#添加仓库39.97.176.117
ADD_REGISTRY='--add-registry 39.97.176.117:5000'

在这里插入图片描述

(3)重启docker容器:
systemctl restart docker

docker ps -a
docker start e3e16ba24caf #启动registry仓库docker容器

注:现在可以重新docker push了!就好了
在这里插入图片描述

6、从自己搭建的仓库中下载busybox镜像

注:下载之前需要把docker中与下载相同的镜像先删掉

docker rmi -f 39.97.176.117:5000/busybox:v2
docker pull busybox:v2
#下载的时候不用写docker pull 39.97.176.117:5000/busybox:v2

在这里插入图片描述

7、我们下载的镜像存储在哪里的呢?

注:在第4步中我们做了-v映射,所以可以从两个地方查看!

yum install tree -y
#宿主机:
tree /data/registry/

#registry仓库的docker虚拟机:
tree /var/lib/registry/

注意:-v映射只是单向的从虚拟机的文件若有改动会映射到宿主机的文件,在宿主机中删除文件是不会影响到虚拟机的,所以如果要删除仓库中的镜像,需要到registry仓库的docker容器中的相应目录去删除!

8、公有仓库+Nginx反向代理

因为我们用的是公网地址,现在在全国随便哪个已经联网的主机上都可以下载该仓库的镜像!修改一下该主机中的/etc/sysconfig/docker文件添加一下该仓库即可!

仓库优化建议:

首先我们可以做nginx+openssl做一个https,这样就不用添加"--insecure-registry"这个参数了

nginx虚拟主机配置:
在这里插入图片描述注:像这个样子就不用-p映射端口了,然后上面所有步骤里面的39.97.176.117都需要改成www.wujincheng.xyz,/etc/sysconfig/docker文件里面也需要改39.97.176.117为www.wujincheng.xyz。

发布了188 篇原创文章 · 获赞 150 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_44571270/article/details/104428475