广告
返回顶部
首页 > 资讯 > 服务器 >聊聊docker中容器与镜像的区别
  • 238
分享到

聊聊docker中容器与镜像的区别

2024-04-02 19:04:59 238人浏览 独家记忆
摘要

什么是镜像? 镜像可以看成是由多个镜像层叠加起来的一个文件系统(通过UNIOnFS与AUFS文件联合系统实现),镜像层也可以简单理解为一个基本的镜像,而每个镜像层之间通过指

什么是镜像?

镜像可以看成是由多个镜像层叠加起来的一个文件系统(通过UNIOnFS与AUFS文件联合系统实现),镜像层也可以简单理解为一个基本的镜像,而每个镜像层之间通过指针的形式进行叠加。

什么是容器

容器(container)的定义和镜像(image)几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。要点:容器 = 镜像 + 读写层,并且容器的定义并没有提及是否要运行容器。

今天抛开原理,抛开底层。通俗的讲解Docker中容器与镜像的区别。

对于初学者来说,刚刚接触docker会有点迷,特别是镜像与容器。其实我们可以理解镜像与容器为一对多的关系。

下图错误的示范,为什么是错误的呢?因为可以通过一个镜像确实可以启动三个容器,但是这个三个容器的名字不能一样

正确的示例(有人说这和上图有什么区别,上图中是不是名字一样了 容器=容器=容器 ,这里的名字是 容器a != 容器b != 容器c )

所以我们能通过一个镜像,运行出三个容器,镜像是别人打包好在镜像仓库的,我们去下载就好了。但是我们下载镜像的时候要带上版本号。就像我们下载一个jdk,官网默认是最新版,如果我们要下载旧版,就要进到对应的版本里面。

一个镜像怎么运行为容器呢?比如msql,我们下载一个Mysql镜像。


docker pull mysql

运行镜像,生成mysql_zhangsan数据库(专门给张三用的数据库)


[root@localhost ~]# docker run ‐p 3306:3306 ‐‐name mysql_zhangsan ‐e MYSQL_ROOT_PASSWord=123456 ‐d  mysql 
ad10e4bc5c6a0f61cbad43898de71d366117d120e39db651844c0e73863b9434

-p 3306:3306 : 端口映射

--name mysql_zhangsan : 给这个容器命名为mysql_zhangsan(这个名字是唯一的,不能重复)

-e MYSQL_ROOT_PASSWORD=123456 : 这个数据库登陆的账号为ROOT 密码为123456

-d 是基于我们刚刚拉下拉的镜像mysql进行创建的。

运行镜像,生成mysql_lisi数据库(专门给李四用的数据库)


[root@localhost ~]# docker run ‐p 3307:3307 ‐‐name mysql_lisi ‐e MYSQL_ROOT_PASSWORD=123456 ‐d  mysql 
ms10e4bcfdsf0f61cbad43898de71d366117d120dfs9db651844c0e73863b9968

-p 3307:3307 : 端口映射(不能用3306了,因为3306被张三的数据库占用了)

--name mysql_lisi : 给这个容器命名为mysql_lisi(这个名字是唯一的,不能和上面的mysql_zhangsan重复)

-e MYSQL_ROOT_PASSWORD=123456 : 这个数据库登陆的账号也为ROOT 密码也为123456

-d 是基于我们刚刚拉下拉的镜像mysql进行创建的。

到这里,我们成功通过一个镜像,创建了两个不同的容器。这样,我们的电脑上就能运行两个mysql了。如果我们要再开一个mysql容器,只要端口不同,名称不同,最后还是基于我们拉的mysql镜像就可以进行创建了。

以上就是聊聊docker中容器与镜像的区别的详细内容,更多关于docker容器与镜像的区别的资料请关注编程网其它相关文章!

--结束END--

本文标题: 聊聊docker中容器与镜像的区别

本文链接: https://www.lsjlt.com/news/127858.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 聊聊docker中容器与镜像的区别
    什么是镜像? 镜像可以看成是由多个镜像层叠加起来的一个文件系统(通过UnionFS与AUFS文件联合系统实现),镜像层也可以简单理解为一个基本的镜像,而每个镜像层之间通过指...
    99+
    2022-11-12
  • docker中容器与镜像的区别是什么
    本篇文章为大家展示了docker中容器与镜像的区别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。什么是镜像?镜像可以看成是由多个镜像层叠加起来的一个文件系统(通过UnionFS与AU...
    99+
    2023-06-15
  • 聊聊Docker中容器的创建与启停问题
    目录1. 镜像和容器2. 新建并启动容器3. 使用第一个容器4. 容器命名5.重启容器6. 附着到容器上1. 镜像和容器 看待镜像和容器的一种方式是将它们类比成程序与进程。一个进程可...
    99+
    2022-11-13
  • docker容器和镜像有哪些区别
    Docker容器和镜像是Docker技术中的两个重要概念,它们有以下区别:1. 镜像是一个只读的模板,包含了运行环境和所需的软件工具...
    99+
    2023-10-19
    docker
  • Docker和容器镜像的区别是什么
    本篇文章为大家展示了Docker和容器镜像的区别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。很多刚刚接触容器技术的朋友,不容易弄清楚容器,容器镜像和Docker这几个词的区别和联系。我们首先...
    99+
    2023-06-04
  • 聊聊python中not 与 is None的区别
    原因: list 获得的数据为空: 显示值为 [ ] 不同的判断--- is None ----not 两者结果不一样分析: 总之: not 判断的是内容,而is None则涉及到这个 list 或 dict...
    99+
    2022-06-02
    python not is None
  • 详细聊聊TypeScript中unknown与any的区别
    目录前言1. unknown vs any2. unknown 和 any 的心智模式3.总结总结前言 我们知道 any 类型的变量可以被赋给任何值。 let myVar: a...
    99+
    2022-11-12
  • Docker镜像与容器的导入导出方法
    这篇文章主要介绍“Docker镜像与容器的导入导出方法”,在日常操作中,相信很多人在Docker镜像与容器的导入导出方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker镜像与容器的导入导出方法”的疑...
    99+
    2023-06-29
  • Docker容器实战之镜像与容器的工作原理
    目录一. bootfs和rootfs二. 镜像结构三. 容器层四. 联合文件系统​一. bootfs和rootfs 通常而言,Linux的操作系统由两类文件系统组...
    99+
    2022-11-13
  • Docker镜像与容器的工作原理是什么
    本篇内容介绍了“Docker镜像与容器的工作原理是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一. bootfs和rootfs通常而言...
    99+
    2023-06-30
  • Docker镜像与容器的导入导出操作实践
    目录一、前言二、docker镜像的导入和导出1、docker镜像的导出2、docker镜像的导入三、docker容器的导入和导出1、docker容器的导出2、docker容器的导入四...
    99+
    2022-11-13
  • Docker配置本地镜像与容器的存储位置
    使用find命令找到大于指定大小的文件: find / -type f -size +10G 排除某个目录 find / -path "/media/xww" -type...
    99+
    2022-11-12
  • Docker如何从容器的修改中创建镜像commit
    小编给大家分享一下Docker如何从容器的修改中创建镜像commit,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!从容器的修改中...
    99+
    2022-10-19
  • Docker镜像与容器的导入导出以及常用命令总结
    目录前言一、Docker 镜像和容器的导入导出1.1、镜像的导入导出1.1.1、镜像的保存1.1.2、镜像的导入1.2、容器的导入和导出1.2.1、容器的导出1.2.2、容器包的导入...
    99+
    2022-11-13
  • CentOS中怎么修改Docker的默认镜像和容器存储位置
    本篇内容主要讲解“CentOS中怎么修改Docker的默认镜像和容器存储位置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CentOS中怎么修改Docker的默认镜像和容器存储位置”吧!How?...
    99+
    2023-06-27
  • Docker环境下将已运行的容器打包成新的镜像并运行在另一个服务器上的Docker容器中
    1、 查看当前运行的容器 1、使用root账户登录进入Linux系统中,键入docker ps命令。 2、打包容器为镜像包 1、正在运行的容器一行中CONTAINER ID一列下面的字符串就是容器id,复制想要打包的容器ID并执行dock...
    99+
    2023-08-19
    docker 服务器 运维
  • 深入浅析Java中HashMap与HashTable容器的区别
    这篇文章给大家介绍深入浅析Java中HashMap与HashTable容器的区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、HashMap HashMap继承抽象类AbstractMap,实现接口Map、Clon...
    99+
    2023-05-31
    java hashmap hashtable
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作