概述

随着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. DFS遍历图(链式邻接表实现)

    1 #include<iostream> 2 #include<string.h> 3 #include<stdlib.h> 4 #include<stdio ...

  2. HOLMES通过关联可疑信息流进行实时 APT 检测

    HOLMES 通过关联可疑信息流进行实时 APT 检测 基本信息 题目:HOLMES: Real-time APT Detection through Correlation of Suspiciou ...

  3. 一篇可供参考的 K8S 落地实践经验

    前言 k8s 即 Kubernetes,是一个开源的容器编排引擎,用来对容器化应用进行自动化部署. 扩缩和管理 本篇文章将分享 k8s v1.18.8 的安装,以及其面板,监控,部署服务,使用Ingr ...

  4. 如何实现CesiumJS的视效升级?

    CesiumJS作为一款强大的地理可视化引擎,为我们提供了丰富的地球数据可视化和交互展示的能力.然而,随着用户需求的不断增加和技术的不断进步,如何进一步提升CesiumJS的视觉效果成为了一个重要的问 ...

  5. grafana添加组件

    ###安装grafana插件需联网安装[root@zabbix grafana]# grafana-cli plugins list-remote #查询可用的插件id: abhisant-druid ...

  6. spring与jndi(数据库连接)SpringBoot打war包并整合jsp

    spring与jndi(数据库连接)SpringBoot打war包并整合jsp,这里的jndi指的是jdbc连接,不是其他的.有传统servlet+spring和springboot的jndi连接操作 ...

  7. 6、Flutter 列表组件 滑动

    列表有以下分类: 1.垂直列表 class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget bui ...

  8. 第一部分_Shell介绍

    SHELL介绍 前言: 计算机只能认识(识别)机器语言(0和1),如(11000000 这种).但是,我们的程序猿们不能直接去写01这样的代码,所以,要想将程序猿所开发的代码在计算机上运行,就必须找& ...

  9. 详解驱动开发中内核PE结构VA与FOA转换

    摘要:本文将探索内核中解析PE文件的相关内容. 本文分享自华为云社区<驱动开发:内核PE结构VA与FOA转换>,作者: LyShark . 本章将探索内核中解析PE文件的相关内容,PE文件 ...

  10. 华为云FusionInsight助力宇宙行打造金融数据湖新标杆

    摘要:工行采用了华为云FusionInsight MRS大数据存算分离方案,实现了大数据平台与OBS对象存储服务的对接,将原有的HDFS数据无缝迁移到OBS上.在保证性能的前提下,实现了计算与存储独立 ...