当前位置: 首页 > 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> 元素…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

#Uniapp篇:chrome调试unapp适配

chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器&#xff1a;Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

逻辑回归暴力训练预测金融欺诈

简述 「使用逻辑回归暴力预测金融欺诈&#xff0c;并不断增加特征维度持续测试」的做法&#xff0c;体现了一种逐步建模与迭代验证的实验思路&#xff0c;在金融欺诈检测中非常有价值&#xff0c;本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...