Docker私有镜像仓库
Docker Hub
Docker仓库可以分为公有仓库和私有仓库,目前 Docker 官方维护了一个公共仓库 Docker Hub,我们需要的大部分镜像都可以在 Docker Hub 中直接下载。而私有仓库是由用户自行搭建的存放镜像的云环境。
Docker Hub地址:https://hub.docker.com
登录
可以使用交互式方式的输入用户名及密码来完成在命令行界面登录 Docker Hub。
$ docker login
退出
$ docker logout
私有仓库
私有仓库搭建
- 拉取私有仓库镜像
docker pull registry
- 修改配置文件,设置私有仓库的地址
修改 /etc/docker/daemon.json
文件
vim /etc/docker/daemon.json
修改insecure-registries
的值,改为私有仓库的主机ip和端口
{
...
"insecure-registries": ["192.168.20.128:5000"],
...
}
- 重新加载配置文件以及重启docker服务
systemctl daemon-reload
systemctl restart docker
创建私有镜像仓库容器
docker run -id --name=registry -p 5000:5000 -v /data/docker_registry:/var/lib/registry registry
打开浏览器输入地址:http://192.168.20.128:5000/v2/_catalog 可以看到 {"repositories":[]}
表示私有仓库搭建成功。
推送镜像至私有仓库
标记镜像为私有仓库的镜像
docker tag 本地镜像:标签 私有仓库服务器IP:5000/仓库镜像:标签
示例:
docker tag centos:7 192.168.20.128:5000/testcentos:7
推送镜像至私有私有仓库
docker push 192.168.20.128:5000/testcentos:7
打开浏览器输入地址:http://192.168.20.128:5000/v2/_catalog 可以看到{"repositories":["testcentos"]},镜像已经上传。
从私有仓库拉取镜像
先将本地刚刚上传的镜像删除
docker rmi 192.168.20.128:5000/testcentos:7
拉取镜像
docker pull 192.168.20.128:5000/testcentos:7