了解和使用 Docker 镜像仓库

article/2025/3/12 13:25:13

前言

在上文 《了解和使用 Docker》 之后,反响不错,也上了热榜。本来是想直接整理一下容器编排工具 Docker Swarm 和 K8s 博文的,但是半路杀出了这个活动😂,为表敬意,先参与一波吧。
在这里插入图片描述

本文主要介绍一下容器镜像仓库的使用,包括公有仓库和自己搭建的私有仓库。

文章目录

  • 前言
  • Docker 公共仓库
    • Docker Hub 注册登录
    • 创建容器镜像仓库
    • 上传镜像
  • Harbor 私有仓库
    • Harbor 环境搭建
    • 镜像上传至 Harbor

Docker 公共仓库

Docker hub 是 Docker 官方维护的一个公共仓库,大部分需求都可以通过在 Docker Hub 中直接下载镜像来实现。

因为 hub.docker.com 是在国外的,所以无法访问该网址,我们平时使用时可以通过配置镜像加速来拉取镜像。《了解和使用 Docker》中有镜像加速配置,这里就不再次陈述了。

但是如果要将自己的镜像推送到公共仓库中还需要有一个账号登录到 hub.docker.com 中才可以 push。

Docker Hub 注册登录

通过下图链接注册一个账号并登录

在这里插入图片描述

创建容器镜像仓库

登录成功后需要自己创建一个仓库,用来存储镜像。
在这里插入图片描述

上传镜像

镜像仓库创建好之后,就可以将本地的容器镜像 push 到我们所创建的镜像仓库中,并向全球用户共享容器镜像。

我们以 centos 镜像为例,重新打一个 tag 后进行推送

用刚才注册的账号登录 Docker hub

# docker login 
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: xxx
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded 成功

为容器镜像重新打标记

# docker tag centos:latest xxxx/centos:v1

上传容器镜像至 docker hub

# docker push xxxx/centos:v1
The push refers to repository [docker.io/xxxx/centos]
74ddd0ec08fa: Mounted from library/centos
v1: digest: sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc size: 529

至此镜像就上传成功了,同时别的用户也可以使用这个镜像。

Harbor 私有仓库

如果企业需要搭建自己的镜像仓库,可通过 Harbor 进行搭建,可以自己管理自己的镜像,DevOps 工作也比较方便,重要的是不会受网络的影响。 这个其实就跟 Maven 私有仓库一样。

在搭建 Harbor 前需要安装 Docker、Docker Compose 环境,这里不做详细描述。

Harbor 环境搭建

下载harbor离线安装包

# wget https://github.com/goharbor/harbor/releases/download/v2.4.1/harbor-offline-installer-v2.4.1.tgz

解压harbor离线安装包

# tar xf harbor-offline-installer-v2.4.1.tgz
修改配置文件内容# vim harbor.yml# Configuration file of Harbor# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: 192.168.10.155# http related config
http:# port for http, default is 80. If https enabled, this port will redirect to https portport: 80# https related config
https:# https port for harbor, default is 443port: 443# The path of cert and key files for nginxcertificate: 证书private_key: 密钥
#访问密码
harbor_admin_password: 12345 
......

执行预备、安装脚本

# ./prepare & ./install.sh

安装好之后就可以通过界面访问了
在这里插入图片描述

镜像上传至 Harbor

修改docker daemon使用 Harbor

# vim /etc/docker/daemon.json
# cat /etc/docker/daemon.json
{"insecure-registries": ["192.168.10.155"]
}

重启加载daemon配置


# systemctl daemon-reload
# systemctl restart docker

登录 Harbor

# docker login 192.168.10.155
Username: admin  用户名 admin
Password:        密码   12345
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded 登陆成功

推送本地容器镜像到harbor仓库

# docker push 192.168.10.155/library/centos:v1

通过 Harbor 界面我们就可以看到刚才推送的镜像了。
在这里插入图片描述


http://chatgpt.dhexx.cn/article/sturDQtf.shtml

相关文章

Docker容器之镜像仓库详解

Docker容器之镜像仓库详解 文章目录 Docker容器之镜像仓库详解1. 什么是Docker Image?2. 什么是Docker Registry?3. 镜像相关的操作 本文将集中对镜像、仓库、容器的概念与三者之间的联系进行详细介绍,以及基本的镜像管理操作。 1. 什么是Docker Image&…

docker镜像仓库

一、docker镜像仓库 docker镜像仓库(repository)是集中存放镜像的地方。方便与后续的镜像拉取与上传,便于对镜像的集中管理。镜像仓库一般可分为Docker Hub公共中央仓库和个人或者公司使用的私有仓库,私有仓库如果是个人使用则可…

Docker -- 镜像仓库(搭建私有镜像仓库、向镜像仓库推送镜像、从镜像仓库拉取镜像)

文章目录 1. 镜像仓库1.1 镜像仓库概念 2. 搭建私有镜像仓库2.1.简化版镜像仓库(不推荐)2.2 带有图形化界面版本(推荐)2.2.1 配置Docker信任地址2.2.2 使用DockerCompose部署带有图象界面的DockerRegistry 3. 向镜像仓库推送镜像4…

最全经典 | 机器视觉基础知识汇总

人工智能的小白资源群,这里有最齐全的干货资源,可以和你一样的入门小白一同交流学习亦可以得到专业技术大神的指导。欢迎入群813416857(AI人工智能学习交流),785685380(机器学习技术交流群)&…

机器视觉光源知识总结(二)

更多文章请关注微信公众号:机器视觉专业论坛

机器视觉系统的搭建

对于许多新人来说能成功搭建一套完善的视觉系统是比较困难的,机器视觉包括了许多需要掌握的知识点、比产品选型:视觉软件、相机、光源、镜头。比如安装高度、视野大小、系统要求的运行时间、工作环境等等,对于新人来说需要一套完善的知识体系…

OpenCV与机器视觉

最近在网易云课堂把南科大于仕琪团队的OpenCV教程完整看了一遍,对图像处理或者机器视觉又有了一个系统性的理解。OpenCV中文网站就是他创建的,他的研究团队及其相应成果可以在个人网站中查阅。回想过去在图像处理方面的点点滴滴,做了一个详细…

机器视觉——车牌识别实验汇总

文章目录 前言一、车牌识别背景资料简介二、实现车牌识别步骤1.图像采集(Image Correction)2.角度修正(Angle Correction)3.字符分割 第一次分割4.车牌定位(License Plate Location)5.字符分割 第二次分割6…

机器视觉源码分享

视觉方面的研究,但毕业后未能再此领域深耕,故预将研究阶段所做的工业视觉程序进行分享,作为兴趣爱好愿与有识之人一起交流。 有需要的请留言,以下介绍均有源码 0cHM6Ly9ibG9nLmNzZG4ubmV0L01CU0VwZWVr,size_16,color_FFFFFF,t_70)…

机器视觉基础应用知识详解

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达随着工业4.0时代的到来,机器视觉在智能制造业领域的作用越来越重要,为了能让更多用户获取机器视觉的相关基础知识,包括机器视觉技术是…

机器视觉工程师必须了解的基础知识

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达正文 CCD(像素)与视觉系统的基础知识 关于摄像元件 CCD 数码相机的构造与传统的胶片式相机(模拟式)基本相同。所不同的是数…

机器视觉与图像处理知识点总结

图像灰度均值是对平均灰度的一种度量,反映了图像的亮度,均值越大说明图像亮度越大,反之越小。图像灰度方差反映了图像像素值与均值的离散程度,标准差越大说明图像的质量越好。方差是对平均对比度的度量,每个像素点颜色…

机器视觉基础知识详解

什么是机器视觉 机器视觉是人工智能正在快速发展的一个分支。简单说来,机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是通过机器视觉产品(即图像摄取装置,分CMOS和CCD两种)将被摄取目标转换成图像信号,传送…

机器视觉需要学什么?学习机器视觉需要掌握哪些知识?

图像采集:需要对镜头、光源、相机(CCD)的选型有所了解,有经验的工程师说打光是图像采集的关键。图像采集是对我们后续工作的支撑,采集不到好的图像,对图像处理就会难上好几倍甚至几百倍。 图像处理:图像处理技术一般包…

干货!机器视觉基础知识汇总

来源丨新机器视觉 点击进入—>3D视觉工坊学习交流群 现如今,中国已经成为世界机器视觉发展最为活跃地区,应用范围涵盖了工业、农业、医药、军事、航天、气象等国民经济各个行业。虽然机器视觉的成长速度非常快,但是还是有很多人对机器视觉…

TextView 倾斜属性

android:textStyle"italic"

Android textAppearance的属性设置及TextView属性详解

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666) 转自:http://blog.csdn.net/jaycee110905/article/details/8762238 textAppearance的属性设置 android:textAppearance"?android:attr/textA…

Android控件 TextView属性大全

一、TextView TextView控件一般是用来显示文本 二、如何使用 在layout布局里直接引用&#xff1a; <TextViewandroid:gravity"center_horizontal"android:id"id/tv_moneytext"android:layout_width"match_parent"android:layout_height&q…

Textview属性Kotlin.Android

Textview属性 <TextViewandroid:id"id/textview"android:layout_width"match_parent"android:layout_height"wrap_content"android:text"Hello World!"/>android:layout_width指定宽度 android:layout_height指定高度 "ma…

TextView 文本基础属性

基础属性一栏 &#xff1a; 1 &#xff1a;id :就相当于一个名字 格式 : android:id"id/name" name可自行起名 TextView tvfindViewById(R.id.name);tv.setText("安卓开发"); 创建id可在activity中创建文本对象&#xff0c;使用文本方法进行传值。 通过…