Docker私有镜像仓库

前言

  • 无论是官方的Docker Hub,还是国内的DaoCloud都提供了公有仓库和私有仓库(付费),若想搭建私有的本地镜像仓库,请参考本文。
  • 若需要部署企业版的私有镜像仓库,请参考《Harbor私有镜像仓库》

实验环境

  • OS: CentOS 7.7
  • Docker19.03.8

搭建教程

  • 下载仓库镜像:
1
docker pull registry:2
  • 创建本地仓库并将数据持久化到本地:
1
docker run -d -p 5000:5000 --restart=always --name registry -v /opt/data:/var/lib/registry registry:2
  • Docker从版本1.3之后docker registry默认使用为https,所以要修改Docker配置文件:
1
vim /etc/docker/daemon.json
1
2
3
{
"insecure-registries": ["172.18.10.10:5000"]
}
  • 重启Docker服务:
1
systemctl restart docker.service

测试操作

  • 向本地仓库上传镜像,首先需要标记一个镜像,以下示例使用的为busybox镜像:
1
docker pull busybox
  • 为镜像添加标签:
1
docker tag busybox 172.18.10.10:5000/busybox
  • 查看镜像信息:
1
docker images
  • 上传镜像:
1
docker push 172.18.10.10:5000/busybox
  • 获取仓库中的镜像列表:
1
curl -X GET http://172.18.10.10:5000/v2/_catalog
  • 获取仓库中指定镜像的所有标签:
1
curl -X GET http://172.18.10.10:5000/v2/busybox/tags/list

请作者喝瓶肥宅快乐水