一、概述
我们的教学案例使用的是 Ubuntu Server 16.04 LTS 版本,属于 systemd
系统,需要在 /etc/docker/daemon.json
中增加如下内容(如果文件不存在请新建该文件)
为了 符合“一个服务一台服务器”的分布式思想,我选择再开一台Dokcer虚拟机
{
"registry-mirrors": [
"https://registry.docker-cn.com"
],
"insecure-registries": [
"registry所在服务端ip:5000"
]
}
注意:该文件必须符合 json 规范,否则 Docker 将不能启动。
之后重新启动服务。
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
二、检查客户端配置是否生效
使用 docker info
命令手动检查,如果从配置中看到如下内容,说明配置成功(192.168.153.143 为操作案例 IP)
Insecure Registries:
192.168.153.143:5000
127.0.0.0/8
三、测试镜像上传
我们以 tomcat为例测试镜像上传功能
1、拉取镜像
## 拉取一个镜像
docker pull tomcat
## 查看全部镜像
docker images
2、为镜像打标记
## 标记本地镜像并指向目标仓库(ip:port/image_name:tag,该格式为标记版本号)
docker tag tomcat 192.168.153.143:5000/tomcat
标记前的IP 地址代表自己搭建的仓库地址,拉取镜像时指定这个地址就可拉取,其实在docker 官方拉取时也有地址,只不过被隐藏了
3、将镜像提交到仓库
## 提交镜像到仓库(ip:端口/被标记的镜像名)
docker push 192.168.153.143:5000/tomcat
4、查看上传的镜像
ip:端口/v2/_catalog
5、查看tomcat的所有版本
ip:端口/v2/tomcat/tags/list
6、重新打一个带有版本标记的tomcat镜像,并上传
重新查看tomcat的所有版本