当前位置: 首页 > news >正文

高效容器化技术(3)---docker镜像仓库

1.镜像仓库

        Docker镜像仓库是存储和管理Docker镜像的地方。它允许用户上传、下载和共享Docker镜像,从而方便在不同的主机上部署和运行应用程序。

常见的Docker镜像仓库包括:

  1. Docker Hub:官方的Docker镜像仓库,包含了大量的公共镜像供用户使用。
  2. Docker Registry:Docker官方提供的镜像仓库服务,可通过在本地搭建私有仓库实现镜像的存储和共享。
  3. Harbor:由VMware开源的容器镜像仓库。提供了镜像的存储、复制、标签等功能,并支持多租户和安全管理。
  4. Quay:由CoreOS开发的容器镜像仓库,提供了可靠的镜像构建、存储和分发功能,并支持私有和公共仓库。
  5. Alibaba Cloud Container Registry:阿里云提供的容器镜像仓库服务,支持镜像的存储、共享和部署。
  6. Google Container Registry:谷歌云提供的容器镜像仓库服务,支持镜像的存储和分享,并与Google Cloud Platform集成。

        在使用Docker时,可以选择使用公共镜像仓库,也可以搭建私有仓库来存储和管理自己的镜像。

1.仓库的分类

        Docker镜像仓库根据其分类和工作机制可以分为以下几类:

  1. 公共仓库:

    • Docker Hub:Docker官方提供的公共仓库,包含了大量的官方和社区维护的公共镜像,用户可以自由下载和使用。
    • 其他公共仓库:除了Docker Hub之外,还有一些其他的公共仓库,例如Quay和Alibaba Cloud Container Registry等,也提供了大量的公共镜像供用户使用。
  2. 私有仓库:

    • Docker Registry:Docker官方提供的镜像仓库服务,用户可以在本地搭建私有仓库,用于存储和共享自己的镜像。
    • Harbor:由VMware开源的容器镜像仓库,支持搭建私有仓库,并提供了多租户和安全管理功能。
    • 其他私有仓库:还有一些其他的私有仓库可以选择使用,例如Nexus Repository和JFrog Artifactory等。

2.仓库相关命令

        以下是一些常用的Docker镜像仓库相关命令:

        登录到镜像仓库:

docker login
  • 该命令用于登录到指定的镜像仓库,需要提供用户名和密码。

        登出镜像仓库:

docker logout
  • 该命令用于登出当前登录的镜像仓库。

        搜索镜像:

docker search <镜像名>
  • 该命令用于在镜像仓库中搜索指定名称的镜像。

        下载镜像:

docker pull <镜像名>:<标签>
  • 该命令用于从镜像仓库中下载指定名称和标签的镜像。

        上传镜像:

docker push <镜像名>:<标签>
  • 该命令用于将本地构建的镜像上传到镜像仓库中。

        删除镜像:

docker rmi <镜像名>:<标签>
  • 该命令用于删除本地已有的镜像,包括从镜像仓库中下载的镜像和通过构建Dockerfile生成的镜像。

        查看镜像详情:

docker image inspect <镜像名>:<标签>
  • 该命令用于查看指定镜像的详细信息,包括标签、大小、创建时间等。

        列出已下载的镜像:

docker image ls
  • 该命令用于列出本地已下载的镜像列表。

        列出私有仓库中的镜像:

docker search <私有仓库地址>/<镜像名>
  • 该命令用于搜索指定私有仓库中的镜像列表。

        删除私有仓库中的镜像:

docker rmi <私有仓库地址>/<镜像名>:<标签>
  • 该命令用于删除私有仓库中的指定镜像。

1.docker pull

        docker pull语法如下:

docker pull [选项] <镜像名>[:<标签>]

        其中,<镜像名>指定要下载的镜像的名称,<标签>指定要下载的镜像的版本标签。

        常用的选项包括:

  • -a, --all-tags:下载指定镜像名的所有标签的镜像。
  • --disable-content-trust:禁用镜像内容信任,默认情况下Docker将验证拉取的镜像的内容是否经过签名。
  • --platform:指定平台架构,用于多平台镜像的下载。
  • 下载指定名称的镜像:

    docker pull ubuntu
    
  • 下载指定名称和标签的镜像:

    docker pull ubuntu:latest
    
  • 下载指定名称的所有标签的镜像:

    docker pull --all-tags ubuntu
    
  • 下载指定平台架构的镜像:

    docker pull --platform linux/amd64 ubuntu
    

2.docker search

        docker search语法如下:

docker search [选项] <关键字>

        其中,<关键字>指定要搜索的镜像关键字。

        常用的选项包括:

  • --filter, -f:按指定的过滤条件进行搜索,如"is-official=true"仅搜索官方镜像,"stars=3"仅搜索星级为3的镜像。
  • --limit:指定搜索结果的数量限制,默认为25。
  • --no-trunc:不截断搜索结果的描述。
  • --format:指定输出结果的格式。
  • 搜索包含关键字的镜像:

    docker search ubuntu
    
  • 搜索官方镜像:

    docker search --filter "is-official=true"
    
  • 搜索星级为3的镜像:

    docker search --filter "stars=3"
    
  • 指定输出结果的数量限制:

    docker search --limit 10 ubuntu
    
  • 指定输出结果的格式:

    docker search --format "table {{.Name}}\t{{.Description}}\t{{.Stars}}" ubuntu
    

  3.docker tag

  docker tag命令用于给镜像打标签,即为已有的镜像添加一个新的标签。

  docker tag命令的语法如下:

docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

其中:

  • SOURCE_IMAGE是源镜像的名称或ID。
  • TARGET_IMAGE是目标镜像的名称或ID。
  • TAG是可选项,用于指定镜像的标签,默认为latest

示例使用方式:

docker tag myimage:latest myregistry/myimage:1.0

        上述命令将名为myimage的镜像的最新标签latest打上了一个名为myregistry/myimage的新标签1.0

        通过docker images命令可以查看到添加了新标签的镜像。

相关文章:

高效容器化技术(3)---docker镜像仓库

1.镜像仓库 Docker镜像仓库是存储和管理Docker镜像的地方。它允许用户上传、下载和共享Docker镜像&#xff0c;从而方便在不同的主机上部署和运行应用程序。 常见的Docker镜像仓库包括&#xff1a; Docker Hub&#xff1a;官方的Docker镜像仓库&#xff0c;包含了大量的公共镜…...

使用docker搭建lnmp运行WordPress

一&#xff0c;部署目的 使用 Docker 技术在单机上部署 LNMP 服务&#xff08;Linux Nginx MySQL PHP&#xff09;。部署并运行 WordPress 网站平台。掌握 Docker 容器间的互联及数据卷共享。 二&#xff0c;部署环境 操作系统&#xff1a;CentOS 7Docker 版本&#xff1…...

【设计模式】深入理解Python中的桥接模式(Bridge Pattern)

深入理解Python中的桥接模式&#xff08;Bridge Pattern&#xff09; 在软件开发中&#xff0c;我们常常会遇到一个类随着功能的扩展&#xff0c;继承层次越来越复杂&#xff0c;导致系统僵化&#xff0c;难以维护。桥接模式&#xff08;Bridge Pattern&#xff09;提供了一种…...

YOLOv11改进策略【卷积层】| SAConv 可切换的空洞卷积 二次创新C3k2

一、本文介绍 本文记录的是利用SAConv优化YOLOv11的目标检测网络模型。空洞卷积是一种在不增加参数量和计算量的情况下,通过在卷积核元素之间插入空洞来扩大滤波器视野的技术。并且为了使模型能够适应不同尺度的目标,本文利用SAConv将不同空洞率卷积结果进行结合,来获取更全…...

Javaweb基础-axios

Axios 是一个基于 Promise 的 HTTP 库&#xff0c;可以用在浏览器和 node.js 中。 GET方法 get请求第一种写法 //后端 Slf4j RestController RequestMapping("/demo") public class DemoController {RequestMapping("/getTest")// 被RequestParam标记的参数…...

智能EDA小白从0开始 —— DAY20 OrCAD

以下是对OrCAD和MATLAB两种EDA工具的深入解析&#xff0c;内容扩展至约2220字&#xff1a; OrCAD&#xff1a;电子设计自动化的强大工具 OrCAD&#xff0c;作为电子设计自动化&#xff08;EDA&#xff09;领域的佼佼者&#xff0c;为电子工程师们提供了一套全面的设计解决方案…...

C# WebApi 接口测试工具:WebApiTestClient应用技术详解

目录 一、引言 二、WebApiTestClient介绍 1、特性 2、应用场景 三、WebApiTestClient具体使用 1、WebApi项目引入组件 2、如何使用组件 1、修改Api.cshtml文件 2、配置读取注释的xml路径 3、测试接口 四、总结 一、引言 由于最近项目需要开发WebApi接口&…...

Qt_ymode自己实现

文章内容: 通过Qt实现Ymode协议的封装。通过传入的数据从里面一包一包拿数据。可以用作平时串口和网口的通信。也可以用来程序升级。 #include "ymodem.h"Ymodem::Ymodem() {m_data = nullptr; }Ymodem...

5.3章节python中字典:字典创建、元素访问、相关操作

1.字典的创建和删除 2.字典的访问和遍历 3.字典的相关操作 4.字典的生成式 一、字典的创建和删除 字典&#xff08;dictionary&#xff09;是一种用于存储键值对&#xff08;key-value pairs&#xff09;的数据结构。每个键&#xff08;key&#xff09;都映射到一个值&#xf…...

ECCV2024 Tracking 汇总

一、OneTrack: Demystifying the Conflict Between Detection and Tracking in End-to-End 3D Trackers paper&#xff1a; https://www.ecva.net/papers/eccv_2024/papers_ECCV/papers/01174.pdf 二、VETRA: A Dataset for Vehicle Tracking in Aerial Imagery paper&#…...

C语言知识点

命名规则&#xff1a; 字符组成&#xff1a;标识符只能由字母&#xff08;A~Z&#xff0c;a~z&#xff09;、数字&#xff08;0~9&#xff09;和下划线&#xff08;_&#xff09;组成。首字符要求&#xff1a;标识符的第一个字符必须是字母或下划线&#xff0c;不能是数字。长…...

ICMP协议以及ARP欺骗攻击

ping 命令使用的是 ICMP&#xff08;Internet Control Message Protocol&#xff09;协议&#xff0c;而不是 TCP 或 UDP 协议。因此&#xff0c;ping 命令并不使用特定的端口号。 ICMP 协议 ICMP 是一种网络层协议&#xff0c;主要用于在 IP 网络中传递控制消息。ping 命令利…...

qt5.12.12插件机制无法加载插件问题

环境&#xff1a;win11 vs2015 qt5.12.12 问题描述&#xff1a;确保插件代码正确的情况下&#xff0c;无法解析插件接口&#xff08;即QPluginLoader类的instance(); 返回为空&#xff09;。 问题现象&#xff1a;1、qt5.12.12的debug下无法解析&#xff1b;2、release下禁…...

机器学习面试笔试知识点-线性回归、逻辑回归(Logistics Regression)和支持向量机(SVM)

机器学习面试笔试知识点-线性回归、逻辑回归Logistics Regression和支持向量机SVM 一、线性回归1.线性回归的假设函数2.线性回归的损失函数(Loss Function)两者区别3.简述岭回归与Lasso回归以及使用场景4.什么场景下用L1、L2正则化5.什么是ElasticNet回归6.ElasticNet回归的使…...

SpringBoot民宿预订系统设计与实现

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…...

linux环境下C程序的编译过程以及makefile的简单使用

在windows下&#xff0c;很多用来进行编程软件对于写好的文件&#xff0c;点击编译即可生成想要文件。如.exe可执行文件&#xff0c;.hex文件或者.bin文件等等。软件为我们省略了很多事。但是对于linux初学者来说&#xff0c;初次接触linux系统&#xff0c;面对命令行黑框框有点…...

【从零开始的LeetCode-算法】945. 使数组唯一的最小增量

给你一个整数数组 nums 。每次 move 操作将会选择任意一个满足 0 < i < nums.length 的下标 i&#xff0c;并将 nums[i] 递增 1。 返回使 nums 中的每个值都变成唯一的所需要的最少操作次数。 生成的测试用例保证答案在 32 位整数范围内。 示例 1&#xff1a; 输入&am…...

Java程序设计:spring boot(2)

目录 1 Spring MVC 零配置创建与部署 1.1 创建Spring MVC Web⼯程 1.2 pom.xml 添加坐标相关配置 1.3 添加源代码 1.4 添加视图 1.5 SpringMVC 配置类添加 1.6 入口文件代码添加 1.7 部署与测试 2 Spring Boot 概念&特点 2.1 框架概念 2.2 框架特点 2.3 Spring…...

服务器运维监控平台

云监控平台-简介 一&#xff1a;简介 “phoenix” 是一个灵活可配置的开源监控平台&#xff0c;主要用于监控应用程序、服务器、docker、数据库、网络、tcp 端口和 http 接口&#xff0c;通过实时收集、汇聚和分析监控信息&#xff0c;实现在发现异常时立刻推送告警信息&…...

css中 global 和 deep(两个样式穿透) 区别

1.:global(selector)&#xff1a;这个伪类选择器会选择所有全局的、未被其他样式表覆盖的元素。换句话说&#xff0c;它会匹配所有没有被其他样式表&#xff08;例如内联样式或外部样式表&#xff09;所影响的元素。 :global(p) {color: red; }这段代码会将所有 <p> 元素…...

conda相比python好处

Conda 作为 Python 的环境和包管理工具&#xff0c;相比原生 Python 生态&#xff08;如 pip 虚拟环境&#xff09;有许多独特优势&#xff0c;尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处&#xff1a; 一、一站式环境管理&#xff1a…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!

简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求&#xff0c;并检查收到的响应。它以以下模式之一…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域&#xff1a;无处不在的数字助手 2、 计算机的进化史&#xff1a;从算盘到量子计算 3、计算机的分类&#xff1a;不止 “台式机和笔记本” 4、计算机的组件&#xff1a;硬件与软件的协同 4.1 硬件&#xff1a;五大核心部件 4.2 软件&#…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

LangFlow技术架构分析

&#x1f527; LangFlow 的可视化技术栈 前端节点编辑器 底层框架&#xff1a;基于 &#xff08;一个现代化的 React 节点绘图库&#xff09; 功能&#xff1a; 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...

如何配置一个sql server使得其它用户可以通过excel odbc获取数据

要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据&#xff0c;你需要完成以下配置步骤&#xff1a; ✅ 一、在 SQL Server 端配置&#xff08;服务器设置&#xff09; 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到&#xff1a;SQL Server 网络配…...