1.创建私有仓库
1.1 拉取私有仓库镜像registry
bash
docker pull registry

1.2 运行私有仓库镜像registry
bash
docker run -d -p 5001:5000 -v /data/myregistry/:/tmp/registry --privileged=true registry

1.3 校验私有仓库registry是否安装成功
bash
curl -XGET http://localhost:5001/v2/_catalog

1.4 取消https推送限制
docker默认不允许http方式推送镜像,通过配置选项来取消这个限制。修改完后如果不生效,需要重启docker
bash
vim /etc/docker/daemon.json

bash
{
"registry-mirrors": ["https://0rklkwo6.mirror.aliyuncs.com"],
"insecure-registries": ["127.0.0.1:5001"]
}
2.通过本地docker容器创建镜像
为了演示,这里我使用ubuntu镜像容器来演示。
2.1 运行ubuntu镜像容器
bash
docker run -it ubuntu /bin/bash


2.2 给本地本地容器加入net-tools 工具
bash
apt-get update

bash
apt-get install net-tools

2.3 根据容器生成镜像
bash
docker commit -m="add ifconfig cmd" -a ="edokney" ce992b2fdf89 eubuntu:1.0

2.4 给镜像打标签
bash
docker tag 9395ccd38e29 127.0.0.1:5001/eubuntu:1.0

2.5 推送镜像到私有仓库
bash
docker push 127.0.0.1:5001/eubuntu:1.0

2.6 验证
2.6.1 删除本地镜像
bash
docker rmi -f 127.0.0.1:5001/eubuntu:1.0
2.6.2 运行容器
bash
docker run -it 127.0.0.1:5001/eubuntu:1.0 /bin/bash