目录
docker镜像仓库有什么用
首页 运维 Docker docker镜像仓库有什么用

docker镜像仓库有什么用

Jul 28, 2022 pm 04:14 PM
docker

在docker中,镜像仓库的主要作用是存储和分发docker镜像;镜像仓库是几种存放镜像的地方,镜像仓库可以分为远程仓库和本地仓库两种,远程仓库可以理解成云仓库、公有仓库,是由某个组织、公司维护的仓库,本地仓库可以理解为私有仓库,不对外开放。

docker镜像仓库有什么用

本教程操作环境:linux7.3系统、docker19.03版、Dell G3电脑。

docker镜像仓库有什么用

镜像,可以理解为将应用程序和运行环境打包成“应用模板”,是容器的上层抽象。容器是镜像的运行实例,启动时传入相应的参数,即可运行应用程序。二者的关系类似于代码中的“类和对象”。

要以容器的方式运行应用程序,需要先制作镜像,在镜像中指定应用程序的运行环境、启动方式等信息,然后生成镜像、上传到镜像仓库中。后续要运行这个应用程序时,就会从镜像仓库中拉取这个镜像、然后以容器的方式运行。只要操作系统支持容器运行,就可以运行这个应用程序,屏蔽了环境差异,使部署运行变得简洁。

镜像仓库可分为2种:

  • 远程仓库:可以理解成云仓库、公有仓库,是由某个组织、公司维护的仓库,对互联网开放,所有人共享。如官方的仓库; 

  • 本地仓库:可以理解为公司的私有仓库,不对外开放。一般情况下只在公司内网中使用,用于加快镜像拉取速度、维护公司资产。

目前 Docker 官方维护了一个公共仓库Docker Hub ,大部分需求都可以通 过在 Docker Hub 中直接下载镜像来实现。如果你觉得拉取 Docker Hub 的镜像比较慢的话,我们可以配置一个镜像加速器,当然国内大部分云厂 商都提供了相应的加速器,简单配置即可。

镜像是docker的基础,我们可以从docker.hub官方共有的仓库去拉取镜像,也可以自己去建立自己的私有仓库

扩展知识

搭建镜像仓库

首先,下载Registry镜像并启动

docker pull registry
登录后复制

然后,运行一个Registry镜像仓库的容器实例

最后,在客户端查看镜像仓库中的所有镜像

curl http://your-server-ip:5000/v2/_catalog
登录后复制

上传镜像

首先,为了让客户端服务器能够快速地访问刚刚在服务端搭建的镜像仓库(默认情况下是需要配置HTTPS证书的),这里简单在客户端配置一下私有仓库的可信任设置让我们可以通过HTTP直接访问:

vim /etc/docker/daemon.json
登录后复制

加上下面这一句,这里的“your-server-ip”请换为你的服务器的外网IP地址:

{
"insecure-registries" : [ "your-server-ip:5000" ]
}
登录后复制

PS:如果不设置可信任源,又没有配置HTTPS证书,那么会遇到这个错误:error: Get https://ip:port/v1/_ping: http: server gave HTTP response to HTTPS client.

为了使得配置生效,重新启动docker服务:# systemctl restart docker

其次,为要上传的镜像打Tag

docker tag your-image-name:tagname your-server-ip:5000/your-image-name:tagname
登录后复制
最后,开始正式上传镜像到服务端镜像仓库
docker push your-registry-server-ip:5000/your-image-name:tagname
登录后复制

下载镜像

下载镜像就很简单了,使用pull命令即可:

docker pull your-server-ip:5000/your-image-name:tagname
登录后复制

如果想要知道要下载的镜像都有哪些tag(或版本),可以通过下面这个api来获取:

curl http://your-server-ip:5000/v2/your-image-name/tags/list
登录后复制

推荐学习:《docker视频教程

以上是docker镜像仓库有什么用的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

pycharm如何将project打包 pycharm如何将project打包 Apr 25, 2024 am 03:54 AM

在 PyCharm 中打包项目有四种方法:打包为单独的可执行文件:导出为 EXE 单文件格式。打包为安装程序:生成 Setuptools Makefile 并构建。打包为 Docker 镜像:指定镜像名称、调整构建选项并构建。打包为容器:指定构建的镜像、调整运行时选项并启动容器。

Pi Node教学:什么是Pi节点?如何安装和设定Pi Node? Pi Node教学:什么是Pi节点?如何安装和设定Pi Node? Mar 05, 2025 pm 05:57 PM

PiNetwork节点详解及安装指南本文将详细介绍PiNetwork生态系统中的关键角色——Pi节点,并提供安装和配置的完整步骤。Pi节点在PiNetwork区块链测试网推出后,成为众多先锋积极参与测试的重要环节,为即将到来的主网发布做准备。如果您还不了解PiNetwork,请参考Pi币是什么?上市价格多少?Pi用途、挖矿及安全性分析。什么是PiNetwork?PiNetwork项目始于2019年,拥有其专属加密货币Pi币。该项目旨在创建一个人人可参与

PHP 微服务容器化的敏捷开发与运维 PHP 微服务容器化的敏捷开发与运维 May 08, 2024 pm 02:21 PM

答案:PHP微服务采用HelmCharts部署进行敏捷开发,并使用DockerContainer容器化以实现隔离和可扩展性。详细描述:使用HelmCharts自动部署PHP微服务,实现敏捷开发。Docker镜像允许对微服务进行快速迭代和版本控制。DockerContainer标准隔离微服务,而Kubernetes负责管理容器的可用性和可扩展性。利用Prometheus和Grafana监控微服务性能和健康状况,并创建告警和自动修复机制。

golang程序怎么启动 golang程序怎么启动 Apr 21, 2024 am 12:47 AM

有四种启动 Go 程序的方法:使用命令行:go run main.go通过 IDE 的“Run”或“Debug”菜单启动使用容器编排工具(如 Docker 或 Kubernetes)启动容器在 Unix 系统上使用 systemd 或 supervisor 作为系统服务运行

Docker三分钟搞定LLama3开源大模型本地部署 Docker三分钟搞定LLama3开源大模型本地部署 Apr 26, 2024 am 10:19 AM

概述LLaMA-3(LargeLanguageModelMetaAI3)是由Meta公司开发的大型开源生成式人工智能模型。它在模型结构上与前一代LLaMA-2相比没有大的变动。LLaMA-3模型分为不同规模的版本,包括小型、中型和大型,以适应不同的应用需求和计算资源。小型模型参参数规模为8B,中型模型参参数规模为70B,而大型模型参参数规模则达到400B。然而在训练中,目标是实现多模态、多语言的功能,预计结果将与GPT4/GPT4V相当。安装OllamaOllama是一个开源的大型语言模型(LL

deepseek怎么安装 deepseek怎么安装 Feb 19, 2025 pm 05:48 PM

DeepSeek的安装方法有多种,包括:从源码编译(适用于经验丰富的开发者)使用预编译包(适用于Windows用户)使用Docker容器(最便捷,无需担心兼容性)无论选择哪种方法,请仔细阅读官方文档并充分准备,避免不必要的麻烦。

PHP 分布式系统架构与实践 PHP 分布式系统架构与实践 May 04, 2024 am 10:33 AM

PHP分布式系统架构通过将不同组件分布在网络互联的机器上实现可伸缩性、性能和容错性。该架构包括应用服务器、消息队列、数据库、缓存和负载均衡器。将PHP应用迁移到分布式架构的步骤包括:识别服务边界选择消息队列系统采用微服务框架部署到容器管理服务发现

使用Docker Container部署JavaEE应用程序 使用Docker Container部署JavaEE应用程序 Jun 05, 2024 pm 08:29 PM

使用Docker容器部署JavaEE应用程序:创建Dockerfile定义镜像、构建镜像、运行容器并映射端口,然后在浏览器中访问应用程序。示例JavaEE应用程序:RESTAPI与数据库交互,通过Docker部署后可在localhost访问。

See all articles