DOCKER本地仓库

 

概述

随着docker的应用越来越多,安装部署越来越方便,批量自动化的镜像生成和发布都需要docker仓库的本地化应用。

试用了docker的本地仓库功能,简单易上手,记录下来以备后用。

环境

centos:CentOS  release 7.0 (Final)或以上版本

Docker version 24.0.6, build ed223bc

下载registry镜像

从官方下载registry镜像和debian镜像。

sudo docker pull registry

sudo docker images

REPOSITORY                                      TAG        IMAGE ID       CREATED        SIZE

registry                                        latest     0ae1560ca86f   8 days ago     25.4MB

debian                                          bullseye   909f4919a453   3 weeks ago    124MB

启动registry容器

使用默认5000端口映射registry容器。

sudo docker run -d -p 5000:5000 --restart=always --name registry registry:latest

查看启动情况。

sudo docker ps

CONTAINER ID   IMAGE                                                 COMMAND                   CREATED       STATUS       PORTS                                       NAMES

3795a6fcd7e7   registry:latest                                       "/entrypoint.sh /etc…"   4 hours ago   Up 4 hours   0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   registry

打开registry的web页面,注意要用http不带s。

http://10.55.55.136:5000/v2/_catalog

{"repositories":["test/debian"]}

docker客户端配置

修改docker客户端配置,没有则创建。

sudo vi /etc/docker/daemon.json

{

    "insecure-registries":[

        "10.55.55.136:5000",

        "localhost:5000"

    ]

}

重启docker。

sudo systemctl restart docker

上传镜像到registry

查看当前镜像,有debian的bulleye版本。

sudo docker images

REPOSITORY                                      TAG        IMAGE ID       CREATED        SIZE

registry                                        latest     0ae1560ca86f   8 days ago     25.4MB

debian                                          bullseye   909f4919a453   3 weeks ago    124MB

 

对debian:bullseye打tag。

sudo docker tag debian:bullseye 10.55.55.136:5000/test/debian:v1.0

sudo docker images

REPOSITORY                                      TAG        IMAGE ID       CREATED        SIZE

registry                                        latest     0ae1560ca86f   9 days ago     25.4MB

10.55.55.136:5000/test/debian                   v1.0       909f4919a453   3 weeks ago    124MB

debian                                          bullseye   909f4919a453   3 weeks ago    124MB

 

上传自定义镜像。

sudo docker push 10.55.55.136:5000/test/debian:v1.0

push时如果产生下面的报错,返回上一步,修改docker客户端配置解决。

The push refers to repository [10.55.55.136:5000/test/debian]

Get "https://10.55.55.136:5000/v2/": http: server gave HTTP response to HTTPS client

下载自定义镜像

首先删除本地自定义镜像,然后从registry重新下载。

sudo docker rmi 10.55.55.136:5000/test/debian:v1.0

sudo docker pull 10.55.55.136:5000/test/debian:v1.0

sudo docker images

REPOSITORY                                      TAG        IMAGE ID       CREATED        SIZE

registry                                        latest     0ae1560ca86f   8 days ago     25.4MB

10.55.55.136:5000/test/debian                   v1.0       909f4919a453   3 weeks ago    124MB

debian                                          bullseye   909f4919a453   3 weeks ago    124MB

总结

Docker镜像的本地库是CI自动化流程的必要步骤。

Docker的registry镜像简单易上手。

 

空空如常

求真得真

 

posted @ 2023-10-12 17:10  求真得真  阅读(40)  评论(0编辑  收藏  举报