docker-仓库

1.docker的仓库概念

仓库(Repository)是集中存放镜像的地方。Docker仓库是用来包含镜像的位置,Docker提供一个注册服务器(Registry)来保存多个仓库,每个仓库又可以包含多个具备不同tag的镜像。Docker运行中使用的默认仓库是Docker Hub公共仓库。Docker Hub是Docker公司维护的公共仓库,用户可以免费使用,也可以购买私有仓库。

2.docker私有仓库

docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库。

2.1 安装运行 docker-registry

创建挂载点

[root@VM-4-13-centos opt]# mkdir -p /opt/registry

创建容器

[root@VM-4-13-centos opt]# docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2

这将使用官方的 registry 镜像来启动本地的私有仓库。 用户可以通过指定参数来配置私有仓库位置。
浏览器访问http://IP:5000/v2,出现{}说明registry运行正常。

2.2 推送镜像到私有仓库

[root@VM-4-13-centos opt]# docker tag registry:2  43.143.98.52:5000/registry:2
[root@VM-4-13-centos opt]# docker push 43.143.98.52:5000/registry:2
The push refers to repository [43.143.98.52:5000/registry]
Get https://43.143.98.52:5000/v2/: http: server gave HTTP response to HTTPS client

解决:docker私有仓库服务器,默认是基于https传输的,所以我们需要在客户端127.0.0.1做相关设置,不使用https传输。

解决步骤:

1)[root@VM-4-13-centos opt]# vi /etc/docker/daemon.json

[root@VM-4-13-centos v2]# cat /etc/docker/daemon.json
{
  "data-root": "/home/lib/docker",
  "insecure-registries":["43.143.98.52:5000"]
}

2)重启docker

[root@VM-4-13-centos opt]# systemctl daemon-reload
[root@VM-4-13-centos opt]# systemctl restart docker

3)启动registry镜像

[root@VM-4-13-centos opt]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS               NAMES
5bc0836c3f25        centos              "/bin/bash"              11 minutes ago      Exited (0) 11 minutes ago                       zealous_blackburn
172f59d48482        registry:2          "/entrypoint.sh /etc…"   15 minutes ago      Exited (2) 3 minutes ago                        myregistry
[root@VM-4-13-centos opt]# docker start 172f59d48482
172f59d48482

2.3 重新推送镜像到私有仓库

[root@VM-4-13-centos opt]# docker push 43.143.98.52:5000/registry:2
The push refers to repository [43.143.98.52:5000/registry]
85f82aceeda3: Pushed 
f79c4d8837b6: Pushed 
90d6ca1e837f: Pushed 
f4285c491509: Pushed 
4693057ce236: Pushed 
2: digest: sha256:da1fbcd13a7ddc77d0d964a5c5c4cb707b5d440a028b0b42fe574b9e99077e27 size: 1363

2.4 访问http://43.143.98.52:5000/v2/_catalog 私有仓库目录,可以查看刚刚上传的镜像

 2.4 下载私有仓库的镜像

[root@VM-4-13-centos cangku]# docker pull 43.143.98.52:5000/registry:2
2: Pulling from registry
Digest: sha256:da1fbcd13a7ddc77d0d964a5c5c4cb707b5d440a028b0b42fe574b9e99077e27
Status: Image is up to date for 43.143.98.52:5000/registry:2

 

posted @ 2023-09-04 15:51  家乐福的搬砖日常  阅读(48)  评论(0编辑  收藏  举报