上传镜像至docker Hub,以及搭建本地私有仓库

仓库(Repository)是集中存放镜像的地方,分为公共仓库和私有仓库
注册服务器(Registry)是存放仓库的具体服务器,一个注册服务器上可以有多个仓库,每个仓库下面有多个镜像

首先要说的是docker Hub 公共镜像市场
本地执行docker iogin 登陆

官方给出的命令

1
docker pull 注册仓库/仓库名

这里需要将要上传的镜像改名,在名称前加上自己dockerHub的ID

速度很慢,需要配置镜像加速器,我配置的是阿里的配置镜像加速器

里面会有自己专用的加速连接

1
2
3
4
5
6
7
8
9
10
11
mkdir -p /etc/docker

vim daemon.json

{
"registry-mirrors": ["your accelerate address"]
}

systemctl daemon-reload

systemctl restart docker

再次上传就很快了

来到docker hub就可以看到了

可以通过官方提供的registry 镜像来搭建本地私有仓库环境

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

可以看到容器已经启动了,映射主机5000端口,容器的/tmp/registry 挂载到主机/opt/data/registry目录,地址为172.17.0.2:5000
docker tag 将要上传的镜像进行标记(docker tag Image[:tag] [Registryhost/] [Username/] Name [:Tag])

1
docker tag centos 172.17.0.2:5000/test

配置对仓库进行的安全性检查

在/etc/docker/daemon.json

1
{"insecure-registries":["172.17.0.2:5000"]}

1
2
3
systemctl restart docker
docker restart e46 重启registry 容器
netstat -ntl 查看5000端口是否开放
1
docker push 172.17.0.2:5000/test
1
curl -XGET http://172.17.0.2:5000/v2/_catalog

可以看到镜像存在

删除本地镜像

1
docker pull 172.17.0.2:500/test

可以看到镜像被拉下来了

------ end ------
0%