Docker镜像,容器和仓库到底是什么?
一、前言
开发者,本文主要在3A服务器下学习Docker镜像,容器,仓库这三个概念,理解了这三个概念, 就理解了Docker的整个生命周期,为后续学习打下坚实基础。
二、镜像(Image)
和大多数虚拟化技术一样,Docker也有镜像的概念,镜像是运行虚拟环境的基础,也是迁移虚拟环境的强大工具。
举个例子,假如小周想要安装正版系统,可以使用正版 iso 镜像文件,但是小周也不知道哪个才是纯净的镜像文件,小周倒霉,第一次安装是盗版的,所谓盗版就是指在纯净系统上进行了个人diy后,再次制作发布的镜像。
吃一堑长一智,小周这次来到官网下载并安装了纯净的系统镜像,三年过去了。。。小周的电脑性能有点力不从心了,决定换一台电脑,小周这三年努力学习,在电脑上下载和存放了很多重要学习资料,能不能有种办法可以无痛的迁移到新电脑上呢?聪明的小周想到了盗版系统,于是跑去电脑店让技术人员给他的电脑定制了一个属于自己的系统镜像,小周拿着镜像文件,咔哧咔哧的来到新电脑前,三下五除二就安装成功了,就这样连着系统和自己的数据完整的迁移了,小周非常开心,大喊 “奥里给” 。
回到正题,在Docker中,镜像是一个包含应用程序以及相关依赖库的文件,在Docker容器启动的时候,它以只读的方式被用于创建容器运行的基础环境。
如果把容器理解为应用运行的虚拟环境,那么镜像就可以看作这个环境的持久化副本,通过镜像我们很容易保存虚拟环境的运行状态,从而很方便的完成镜像的迁移以及复制等等操作。
三、容器(Container)
镜像和容器的关系,就像面向对象中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体,容器可以被创建、启动、停止、删除等。
容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间,因此容器可以拥有自己的 root文件系统,自己的网络配置,自己的进程空间,甚至自己的用户空间,容器内的进程是运行在一个隔离的环境里,使用起来,就好像是在一个独立于宿主的系统下操作一样,这种特性使得容器封装的应用比直接在宿主运行更加安全。
每一个容器运行时,是以镜像为基础层,在其上创建一个当前容器的存储层,通常称这个为容器运行时读写而准备的存储层为 容器存储层,容器存储层的生命周期和容器一样,容器消亡时,容器存储层也随之消亡。
四、仓库(Repository)
仓库(Repository)是集中存放镜像的地方。
镜像构建完成后,可以很容易的在当前宿主机上运行,但是如果需要在其它服务器上使用这个镜像,此时我们就需要一个集中存储和分发镜像的服务,Docker Registry 就是这样的服务。
4.1、Docker Hub
Docker官方维护了一个公共仓库Docker Hub,大部分需求都可以通过在 Docker Hub 中直接下载镜像来实现。
4.2、私有仓库
除了使用公开服务外,用户还可以在本地搭建私有仓库,官方提供了Docker Registry镜像,可以直接使用做为私有 Registry 服务,后续会详细✍
相关文章
- docker容器ip和端口分配_docker iptables failed
- 6.Docker镜像与容器安全最佳实践
- 【重识云原生】第六章容器6.1.9节——Docker镜像技术剖析
- 使用docker stack编排你的容器集群
- Docker容器实战五:镜像与容器
- Docker容器实战七:镜像仓库
- Docker容器实战十三:容器安全的最佳实践
- Ngnix反向代理Docker容器后404
- docker启动镜像容器命令_镜像删除
- 一键删除所有未使用的Docker镜像和无用容器
- 远程连接服务器中的Docker容器
- 关于Docker中 容器镜像管理,数据卷网络,本地仓库,容器监控的一些笔记
- 手动实现docker容器bridge网络模型
- Docker服务的拉取镜像命令(docker pull 镜像名称)
- Docker删除容器命令(docker rm)
- Docker高级篇:docker网络的四种类型
- 「 【Docker】设置docker加速器(如何使docker下载速度变快) 」
- 2-5 安装容器Web工具:Docker Portainer
- 【Docker 系列】docker 学习十,Compose 编写规则及wp 实战
- Docker的容器管理
- Docker容器的ubuntu镜像配置apt国内源
- docker 从容器创建新镜像,及镜像的备份和恢复
- Docker(二)——镜像与容器的理解
- docker 容器中访问宿主机或者其他容器详解程序员
- 在Linux系统中安装Docker容器(linux下安装docker)
- 基于Windows Server 2022 微软发布新Docker容器镜像
- DaoCloud开创Docker容器云平台的新模式
- Docker 容器镜像下载已超20亿次
- docker-容器间通信
- 快速安装Linux上的Docker(linux安装docker)