概述

随着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镜像简单易上手。

空空如常

求真得真

DOCKER本地仓库的更多相关文章

  1. [docker]本地仓库的创建的使用

    如果自己创建的镜像可以供其他同事使用,那就可以大大节约开发时间成本,docker的本地仓库正好可以满足这样的需求 1.在仓库服务器上创建本地仓库 baylor@baylor-virtual-machi ...

  2. k8s环境部署.net core web项目(docker本地仓库)

    在之前的文档中,我们部署了.net core web在k8s环境下,达成了集群管理项目的目的.但是,由于是本地部署,需要在所有的node节点都拉取好镜像,这是非常麻烦的,为了只维护一份代码,同步更新. ...

  3. docker本地仓库&镜像

    镜像的命名规则: 1.[冷数据]/[base镜像]例如:ansible,centos 2. lastest{最新的意思}  不是真的(随便命名) 3. [image name]=[repository ...

  4. 搭建docker本地仓库

    如果没有创建docker环境的话,需要先安装docker环境. 1. 使用命令创建容器 docker run -d -p 8081:8080 atcol/docker-registry-ui 8081 ...

  5. docker推送镜像到docker本地仓库报错:http: server gave HTTP response to HTTPS client

    因为Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误. 解决办法: vim / ...

  6. Docker 使用指南 (二)—— 搭建本地仓库

    版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/94 来源:腾云阁 https://www.qclou ...

  7. Docker自建本地仓库

    1.安装docker yum install docker -y 之后根据需求把指定docker安装目录,或者新建一个磁盘使用docker-storage-setup来使用 2.设置第三方docker ...

  8. Kubernetes 本地仓库

    1.Kubernetes本地私有仓库 Docker仓库主要用于存放Docker镜像,Docker仓库分为公共仓库和私有仓库,基于registry可以搭建本地私有仓库.使用私有仓库有如下优点: 1)节省 ...

  9. 微服务架构 - 搭建docker本地镜像仓库并提供权限校验及UI界面

    搭建docker本地镜像仓库并提供权限校验及UI界面 docker本地镜像仓库的作用跟maven私服差不多,特别是公司级或者是小组级开发好的docker仓库可以上传到本地镜像仓库中,需要用时,直接从本 ...

  10. docker搭建本地仓库并制作自己的镜像

    原文地址https://blog.csdn.net/junmoxi/article/details/80004796 1. 搭建本地仓库1.1 下载仓库镜像1.2 启动仓库容器2. 在CentOS容器 ...

随机推荐

  1. [ABC318G] Typical Path Problem

    Problem Statement You are given a simple connected undirected graph $G$ with $N$ vertices and $M$ ed ...

  2. excute方法和submit方法

    区别:   1.参数     execute  Runnable     submit     Callable   2.返回值     execute :void     submit :Futur ...

  3. springMvc_快速入门

    概念:是一种基于Java实现mvc模型的轻量级web框架 优点:使用简单,开发便捷    灵活性强 总体来说springMvc就是来替代servlet的一种工具 快速入门: 1.创建maven-web ...

  4. MySQL中IN()按照指定列指定规则排序

    现在我有这么一个需求,我需要通过IN(id1,id2,......)查询id字段,并且id字段按照IN()中的顺序排序 例如:IN(5,1,2,4) ===> 查询出来的结果也应该为 5,1,2 ...

  5. 持续集成Jenkins

    一.简单慨念 持续集成(Continuous integration,简称 CI),随着近几年的发展,持续集成在项目中 得到了广泛的推广和应用. 软件集成就是用一种较好的方式,使多种软件的功能集成到一 ...

  6. OpenEuler22.03安装最新版本Docker

    一.环境及问题 操作系统环境如下: 操作系统:OpenEuler 22.03 LTS 安装方式:最小化安装 在操作系统安装完毕如果直接采用dnf或者yum方式安装docker: sudo dnf in ...

  7. STM32CubeMX教程5 TIM 定时器概述及基本定时器

    1.准备材料 开发板(STM32F407G-DISC1) ST-LINK/V2驱动 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK-Arm) 逻 ...

  8. Python——Html(表格<table>, <tr>,<td>,<th>、表单<form>、自定义标签<div>和<span>)

    一.表格<table>, <tr>,<td>或<th> <table> 元素是 HTML 中用于创建表格的主要标记.表格是一种用于展示数据的 ...

  9. html2pdf

    nodejs 生成pdf比较靠谱,使用chrome核心渲染: puppeteer / phantom 爬虫都好用 good

  10. MySQL篇:bug1_navicat添加外键保存后不起作用(消失)

    问题 在Nacicat premium中添加外键一保存就消失 用SQL语句也显示创建成功,没有报错,可是在INSERT中又起不到约束作用 解决办法 参考一下资料发现可能是表的类型不支持外键 要在 My ...