Docker--Docker Registry(镜像仓库)
什么是Docker Registry?
镜像仓库(Docker Registry)是Docker生态系统中用于存储、管理和分发Docker镜像的关键组件。
镜像仓库主要负责存储Docker镜像,这些镜像包含了应用程序及其相关的依赖项和配置,是构建和运行Docker容器的基础。除了存储功能外,镜像仓库还提供管理和分发镜像的能力,包括镜像的索引、搜索、登录认证等。
镜像仓库的分类
镜像仓库可以划分为多种类型;
按照开放程度分类
1.公共镜像仓库
- 官方镜像仓库:由Docker官方提供的镜像仓库,包含了大量常用的官方镜像,如nginx、mysql等。这些镜像经过官方认证,具有较高的可靠性和安全性。
- 第三方公共镜像仓库:由第三方提供的公共镜像仓库,如腾讯云镜像仓库、阿里云镜像仓库等。这些仓库提供了丰富的镜像资源,用户可以根据需要选择并下载。
2.私有镜像仓库
- 私有镜像仓库通常部署在企业内部或私有网络中,仅对特定用户或组织开放。它用于存储和管理企业内部的应用镜像和敏感数据,确保镜像的安全性和可控性。
按部署方式分类
1.本地镜像仓库
- 本地镜像仓库部署在本地服务器上,适用于小型团队或内部网络环境。它提供了基本的镜像存储和管理功能,但可能缺乏高级的安全性和可扩展性。
2.云镜像仓库
- 云镜像仓库部署在云平台上,如阿里云、腾讯云等。它提供了丰富的镜像存储、管理和分发功能,支持高并发访问和海量数据存储。同时,云镜像仓库还提供了与云平台的其他服务(如容器服务、CI/CD等)的集成,方便用户进行容器化应用的开发和部署。
按功能特性分类
1.基础镜像仓库
- 基础镜像仓库提供了基本的镜像存储、拉取和推送功能。它适用于简单的镜像管理需求,但可能缺乏高级的安全性和可管理性。
2.企业级镜像仓库
- 企业级镜像仓库在基础镜像仓库的基础上,增加了更多的安全、管理和审计功能。它支持基于角色的访问控制(RBAC)、镜像签名和验证、审计日志等高级功能,确保镜像的安全性和可控性。同时,企业级镜像仓库还支持与企业的LDAP/AD等身份认证系统集成,方便用户进行身份认证和权限管理。
镜像仓库的工作管理机制
1.当需要使用镜像时,用户可以使用docker pull命令从镜像仓库中拉取镜像。镜像仓库会根据用户请求的镜像名称和标签来查找并返回相应的镜像。
2.开发人员部署好镜像所需内容后,可以使用docker push命令将镜像推送到镜像仓库中,供给其他对应环境的开发人员进行使用;
3.镜像仓库支持镜像的删除操作。然而,由于镜像之间可能存在依赖关系,直接删除镜像可能会导致其他镜像无法正常使用。因此,镜像仓库通常会使用垃圾回收机制来清理没有被引用的块文件,以节省存储空间。
常见的镜像仓库
Docker Hub
Docker Hub 的官方链接
ocker Hub是由Docker公司提供的一个集中存储、分享和管理Docker镜像的云服务平台。
主要功能:
- 镜像托管:
- 用户可以将自己创建的Docker镜像上传到Docker Hub,供其他用户下载和使用。
Docker Hub提供了不同层次的存储服务,包括公共仓库和私有仓库,满足用户不同的存储需求。
2.镜像搜索与下载:
用户可以在Docker Hub上搜索所需的镜像,通过关键词、标签、作者等条件进行筛选。
找到合适的镜像后,用户可以通过Docker客户端从Docker Hub上拉取镜像,以便在本地或云环境中部署应用程序。
3. 自动构建与集成:
- Docker Hub支持与GitHub、Bitbucket等代码托管平台集成,实现代码的自动构建和镜像推送。
- 用户可以配置自动构建规则,当代码仓库中的代码发生变化时,Docker Hub会自动构建新的镜像并推送到指定的仓库中。
4.团队协作:
- Docker Hub支持团队账户的创建,方便团队成员之间共享和管理镜像。
团队成员可以共同维护一个镜像仓库,进行镜像的上传、下载、更新等操作。
国内镜像源
由于现在需要科学上网,所以对于国外网站很多都登不上去,所以只能利用国内的镜像仓库来进行拉取镜像;
像我们上一章安装的时候,就是更换了国内镜源来拉取的;
国内镜像加速器服务:
- Docker官方镜像(中国区):
网址:https://registry.docker-cn.com - 腾讯云镜像加速器:
网址:https://mirror.ccs.tencentyun.com - 中国科学技术大学镜像加速器:
网址:https://docker.mirrors.ustc.edu.cn - 网易云镜像加速器:
网址:http://hub-mirror.c.163.com - 南京大学镜像加速器:
网址:https://docker.nju.edu.cn - 阿里云镜像加速器:
注意:阿里云镜像加速器通常需要在阿里云控制台中获取专属的加速器地址,格式一般为https://xxxx.mirror.aliyuncs.com,其中xxxx为用户的专属标识。用户需要登录阿里云控制台,进入镜像加速器页面获取具体的加速器地址。
镜像仓库的常用命令
参考官方文档
命令清单
命令 | 别名 | 功能 | 备注 |
---|---|---|---|
docker login | 登录仓库 | 科学上网才可使用 | |
docker pull | docker image pull | 拉取镜像 | 必须掌握 |
docker push | docker image push | 推送镜像 | 科学上网才可使用 |
docker search | 查找镜像 | 科学上网才可使用 | |
docker logout | 登出仓库 | 科学上网才可使用 |
docker login
登陆到一个 Docker 镜像仓库,如果未指定镜像仓库地址,默认为官方仓库Docker
Hub
docker login [OPTIONS] [SERVER]
关键参数
- -u :登陆的用户名
- -p :登陆的密码
例如:
docker login -u 用户名 -p 密码
docker pull
从镜像仓库中拉取或者更新指定镜像
docker image pull [OPTIONS] NAME[:TAG|@DIGEST]
关键参数
- -a :拉取所有 tagged 镜像
- –disable-content-trust :忽略镜像的校验,默认开启
例如
docker pull ubuntu:18.04
docker push
将本地的镜像上传到镜像仓库,要先登陆到镜像仓库
docker image push [OPTIONS] NAME[:TAG]
关键参数
- -a :推送所有 tagged 镜像
- –disable-content-trust :忽略镜像的校验,默认开启
例如
docker push myapache:v1
docker search
从 Docker Hub 查找镜像
docker search [OPTIONS] TERM
关键参数
- –no-trunc :显示完整的镜像描述;
- -f <过滤条件>:列出收藏数不小于指定值的镜像。
docker logout
登出一个 Docker 镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker logout [SERVER]
docker images
列出本地镜像
docker image ls [OPTIONS] [REPOSITORY[:TAG]]
关键参数
- -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
- –digests :显示镜像的摘要信息;
- -f :显示满足条件的镜像;
- –format :指定返回值的模板文件;
- –no-trunc :显示完整的镜像信息;
- -q :只显示镜像 ID
例如:
docker image inspect
查看镜像详细信息
docker image inspect [OPTIONS] IMAGE [IMAGE...]
例如:
docker ps
列出容器
docker ps [OPTIONS]
参数
- -a :显示所有的容器,包括未运行的。
- -f :根据条件过滤显示的内容。
- –format :指定返回值的模板文件。如 json 或者 table
- -l :显示 latest 的容器。
- -n :列出最近创建的 n 个容器。
- –no-trunc :不截断输出。
- -q :静默模式,只显示容器编号。
- -s :显示总的文件大小、
例如
相关文章:
Docker--Docker Registry(镜像仓库)
什么是Docker Registry? 镜像仓库(Docker Registry)是Docker生态系统中用于存储、管理和分发Docker镜像的关键组件。 镜像仓库主要负责存储Docker镜像,这些镜像包含了应用程序及其相关的依赖项和配置,是构建和运行Doc…...
maven手动上传jar到私服仓库:mvn deploy:deploy-file命令
一、场景 现需要将公司内部的jar包上传到私服仓库,供其他同事使用,此时就需要用到mvn deploy:deploy-file命令。 二、 mvn deploy:deploy-file命令 举个栗子: mvn deploy:deploy-file -DgroupIdorg.pttsql -DartifactIdpttsql -Dversi…...
【机器学习】机器学习中用到的高等数学知识-1.线性代数 (Linear Algebra)
向量(Vector)和矩阵(Matrix):用于表示数据集(Dataset)和特征(Feature)。矩阵运算:加法、乘法和逆矩阵(Inverse Matrix)等,用于计算模型参数。特征值(Eigenvalues)和特征向量(Eigenvectors)&…...
无插件H5播放器EasyPlayer.js网页web无插件播放器选择全屏时,视频区域并没有全屏问题的解决方案
EasyPlayer.js H5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、MP3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方…...
Idea中创建和联系MySQL等数据库
备注:电脑中要已下好自己需要的MySQL数据库软件 MySQL社区版下载链接: https://dev.mysql.com/downloads/installer/ 优点: 1.相比与在命令行中管理数据库,idea提供了图形化管理,简单明了; 2.便于与后端…...
【pytest】pytest注解使用指南
前言:在 pytest 测试框架中,注解(通常称为装饰器)用于为测试函数、类或方法提供额外的信息或元数据。这些装饰器可以影响测试的执行方式、报告方式以及测试的组织结构。pytest 提供了多种内置的装饰器,以及通过插件扩展…...
在Unity中使用Epplus写Excel
Overview 本文旨在帮助你快速入门,该库发展多年内容庞大(官方文档写的极好:https://github.com/EPPlusSoftware/EPPlus/wiki),有些功能在Unity环境可能你永远都不会使用. 官方的一个Demo: https://github.com/EPPlusSoftware/EPPlus.Samples.CSharp 如果你只有读的需求,可以…...
初识算法 · 模拟(2)
目录 前言: Z字形变换 题目解析 算法原理 算法编写 数青蛙 题目解析 算法原理 算法编写 前言: 本文的主题是模拟,通过两道题目讲解,一道是Z字形变化,一道是数青蛙。 链接分别为: 1419. 数青蛙…...
【Java面试】—— 创建线程池的两种方式(执行流程、拒绝策略)(详细)
目录 一、ThreadPoolExecutor(推荐)(重点) 1、参数 2、执行流程 3、常用方法 4、任务拒绝策略 二、Executors(不推荐) 1、常用方法 2、存在的问题 一、ThreadPoolExecutor(推荐)(重点) 1、参数 使用指定的初始化参数创建一个新的线程池对象 public Thread…...
Docker在微服务架构中的应用
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 Docker在微服务架构中的应用 Docker在微服务架构中的应用 Docker在微服务架构中的应用 引言 Docker 基本概念 1. 容器 2. 镜像 3…...
苹果ASA归因对接以及API接入
一、归因概要 广告归因,目的是用于衡量广告带来的激活用户的成本以及后续进一步的用户质量表现。 Apple Ads 广告平台是基于 App Store(站内广告),同时属于自归因平台(通常称为 SAN)。这两个因素ÿ…...
Git常用操作学习
目录 Git基础概述 1.1 什么是Git? 1.2 Git的优点Git工作流程 2.1 集中式工作流程 2.2 功能分支工作流程 2.3 Git Flow工作流程克隆仓库 3.1 使用git clone 3.2 克隆特定分支分支管理 4.1 创建分支 4.2 切换分支 4.3 合并分支 4.4 删除分支提交和推送更改 5.1 查看状…...
2.5D视觉——Aruco码定位检测
目录 1.什么是Aruco标记2.Aruco码解码说明2.1 Original ArUco2.2 预设的二维码字典2.3 大小Aruco二维码叠加 3.函数说明3.1 cv::aruco::detectMarkers3.2 cv::solvePnP 4.代码注解4.1 Landmark图说明4.2 算法源码注解 1.什么是Aruco标记 ArUco标记最初由S.Garrido-Jurado等人在…...
【PSQLException: An I/O error occurred while sending to the backend.】
PSQLException: An I/O error occurred while sending to the backend. java项目定时任务执行耗时很长的sql语句(很多条sql,从很多表中,很多数据中查询,处理)总之,耗时很长(PG数据库)。报错I/O error,Caused by : java.net.SocketTimeoutException: Read time out场景…...
图像基础算法学习笔记
目录 概要 一、图像采集 二、图像标注 四、图像几何变换 五、图像边缘检测 Sobel算子 Scharrt算子 Laplacian算子 Canny边缘检测 六、形态学转换 概要 参考书籍:《机器视觉与人工智能应用开发技术》 廖建尚,钟君柳 出版时间:2024-…...
【Elasticsearch】01-ES安装
1. 安装 安装elasticsearch。 docker run -d \--name es \-e "ES_JAVA_OPTS-Xms512m -Xmx512m" \-e "discovery.typesingle-node" \-v es-data:/usr/share/elasticsearch/data \-v es-plugins:/usr/share/elasticsearch/plugins \--privileged \--networ…...
网络性能测试
一、iperf网络性能测试工具 测试udp丢包率 在服务器启动 iperf 服务端 iperf -p 9000 -s -u -i 1参数说明: -p : 端口号 -s : 表示服务端 -u : 表示 udp 协议 -i : 检测的时间间隔(单位,秒) 在客户端,启动 iperf 客户端 iperf -c xxx.xxx.14…...
docker:docker: Get https://registry-1.docker.io/v2/: net/http: request canceled
无数次的拉镜像让人崩溃: rootnode11:~/ragflow/docker# more rag.sh #export HTTP_PROXYhttp://192.168.207.127:7890 #export HTTPS_PROXYhttp://192.168.207.127:7890 #export NO_PROXYlocalhost,127.0.0.1,.aliyun.com docker compose -f docker-compose-gpu-C…...
esp32c3开发板通过micropython的mqtt库连MQTT物联网消息服务器
MQTT介绍 MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息协议,旨在设备之间进行通信,尤其是在网络条件较差的情况下。MQTT v3.1.1 和 MQTT v5 是该协议的两个主要版本。 MQTT v3.1.1: 优点ÿ…...
OceanBase 升级过程研究(4.2.1.6-4.2.1.8)
模拟业务 使用benchmark加载10仓数据模拟业务场景 升级方法 使用滚动升级方式来进行OB升级。该方法前提是OB集群必须满足官方规定的高可用架构(如果 Zone 个数小于 3,滚动升级时则无法构成多数派), 滚动升级的原理就是轮流完成每个ZONE的升级工作,由于…...
ubuntu下怎么设置机器程序开机自启?
在 Ubuntu 中,可以通过多种方法设置程序或脚本在系统启动时自动运行。以下是几种常见方法: 方法 1:使用 crontab crontab 是一个定时任务管理工具,可以用来设置程序在开机时自动运行。 1. 打开终端,编辑当前用户的 …...
Cesium 相机系统
Cesium 的相机系统是其 3D 地球渲染引擎的重要组成部分,它控制用户在虚拟地球上的视图和交互体验。Cesium 的相机系统具备灵活性和强大的功能,允许开发者自定义视图、导航和交互方式。以下是 Cesium 相机系统的主要特点和功能: 1. 相机的基本…...
数据结构(基本概念及顺序表——c语言实现)
基本概念: 1、引入 程序数据结构算法 数据: 数值数据:能够直接参加运算的数据(数值,字符) 非数值数据:不能够直接参加运算的数据(字符串、图片等) 数据即是信息的载…...
ZYNQ程序固化——ZYNQ学习笔记7
一、ZYNQ启动过程 二、 SD卡启动实操 1、对ZYNQ进行配置添加Flash 2、添加SD卡 3、重新生成硬件信息 4、创建vitis工程文件 5、勾选板级支持包 6、对系统工程进行整体编译,生成两个Debug文件,如图所示。 7、插入SD卡,格式化为 8、考入BOOT.…...
labview使用报表工具从数据库导出数据
之前写了一篇labview从数据库导出数据到excel电子表格,但是是基于调用excel的activeX控件,有时候会有一些bug,就比如我工作机就无法显示方法,后面大哥指点才知道没有的原因是excel安装不完整。像我的工作机就没有这个选项。就需要…...
#define定义宏(2)
大家好,今天给大家分享两个技巧。 首先我们应该先了解一下c语言中字符串具有自动连接的特点。注意只有将字符串作为宏参数的时候才可以把字符串放在字符串中。 下面我们来讲讲这两个技巧 1.使用#,把一个宏参数变成对应的字符串。 2.##的作用 可以把位…...
CentOS网络配置
上一篇文章:VMware Workstation安装Centos系统 在CentOS系统中进行网络配置是确保系统能够顺畅接入网络的重要步骤。本文将详细介绍如何配置静态IP地址、网关、DNS等关键网络参数,以帮助需要的人快速掌握CentOS网络配置的基本方法和技巧。通过遵循本文的…...
基于vue框架的的网上宠物交易管理系统46sn1(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
系统程序文件列表 项目功能:用户,宠物分类,宠物信息 开题报告内容 基于Vue框架的网上宠物交易管理系统开题报告 一、研究背景 随着互联网技术的飞速发展和人们生活水平的提高,宠物已成为许多家庭的重要成员。宠物市场的繁荣不仅体现在实体店的遍地开…...
MySQL数据库:SQL语言入门 【2】(学习笔记)
目录 2,DML —— 数据操作语言(Data Manipulation Language) (1)insert 增加 数据 (2)delete 删除 数据 truncate 删除表和数据,再创建一个新表 (3…...
MySQL深度剖析-索引原理由浅入深
什么是索引? 官方上面说索引是帮助MySQL高效获取数据的数据结构,通俗点的说,数据库索引好比是一本书的目录,可以直接根据页码找到对应的内容,目的就是为了加快数据库的查询速度。 索引是对数据库表中一列或多列的值进…...
股票群彩票网站做慈善/seo综合查询爱站
现场OPC客户端无法获取远程OPC Server列表,也无法连接OPC Server,经查调用CoCreateInstanceEx()创建IID_IOPCServerList接口正常,但调用IOPCServerList->EnumClassesOfCategories()时返回0x80070532错误,可是用PI的OPC-Tool测试…...
用家庭宽带做网站/杭州seo论坛
学习目标 了解Tensorflow2.0框架的用途及流程知道tf2.0的张量及其操作知道tf.keras中的相关模块及常用方法1.1 TensorFlow介绍 深度学习框架TensorFlow一经发布,就受到了广泛的关注,并在计算机视觉、音频处理、推荐系统和自然语言处理等场景下都被大面…...
山东日照网站建设/千锋教育培训怎么样
Microsoft PetShop 3.0 设计与实现--数据访问层 最近对多层设计实现和.Net产生了兴趣,从而研究了一下比较著名的多层范例程序――PetShop,现在的版本是3.0,和以前的版本从设计上已有一定的区别,应该是和Java的Petshop设计相当。 关…...
昆明网站建设论坛/成crm软件
在本文中,InfoQ.com就Curl平台的相关内容采访了Curl公司开发部副总裁Richard Monson-Haefel。Curl是一个构建企业级RIA应用的平台。Monson-Haefel谈到了Curl编程语言、IDE以及客户端运行环境(RTE)。另外,他强调了在为企业构建RIA应…...
兵团第二师建设环保局网站/长沙正规竞价优化推荐
更好的学习网址:http://www.voidspace.org.uk/python/articles/urllib2.shtml#openers-and-handlers以下为个人学习笔记。在开始后面的内容之前,先来解释一下urllib2中的两个个方法:info and geturl urlopen返回的应答对象response(或者HTTPE…...