首页 > 其他分享 >Docker 镜像原理(commit、容器数据卷)

Docker 镜像原理(commit、容器数据卷)

时间:2023-05-24 14:22:14浏览次数:47  
标签:容器 文件系统 镜像 commit Docker docker

dokcer 镜像原理

联合文件系统(UnionFS)

理解:假设:docker 中包含的 tomcat 和 mysql 均需要使用 linux 内核,这里使用的 linux 内核是共用的。
下载时候看到的一层层就是这个,Docker 镜像实际是由一层一层的文件系统组成
联合文件系统时 Docker 镜像的基础,镜像通过分层来进行继承

特性:一次同时加载多个文件系统,但外面看起来这只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录

docker 镜像默认是只读的。当容器启动的时候一个新的可写层被加载到镜像的顶部,这一层就是我们说的容器层,容器之下都是镜像

commit 镜像

docker commit #提交容器成为一个新的副本

docker commit -m="提交的描述信息" -a="作者" 容器id 目标镜像名:[TAG]

如果你想要保存当前的状态,就可以通过 commit来提交,获得一个镜像,理解为快照

容器数据卷

容器之间可以数据共享的技术,数据可持久化****且同步存储到本地

使用数据卷

  • 使用命令挂载 -v
    docker run -it -v 主机目录:容器内目录
    docker inspect 容器id #来验证是否挂载成功
    ps:是一个双向同步的过程,修改以后不用进入容器修改可以在容器外修改

标签:容器,文件系统,镜像,commit,Docker,docker
From: https://www.cnblogs.com/BY1314/p/17329827.html

相关文章

  • windows下搭建docker容器环境
    下载DockerDesktophttps://www.docker.com/安装DockerDesktop(软件默认安装c盘,若要安装到其他盘,在安装之前创建软连接再进行安装)在自定义磁盘中创建对应文件夹,使用mklink/j“原文件夹路径”“目标文件夹路径”进行软连接的创建mklink/j“C:\ProgramFiles\Doc......
  • 动力节点Docker深入浅出(二)Docker引擎
    分享一下最近正在b站上看动力节点的docker课程,整理了相关学习笔记,会按照学习进度慢慢更新的,加油2Docker引擎2.1Docker引擎发展历程2.1.1首发版本架构Docker在首次发布时,其引擎由两个核心组件构成:LXC(LinuxContainer)与DockerDaemon。不过,该架构依赖于LXC,使得Docker存在......
  • 深入解析Docker(2)Docker引擎
    分享一下最近正在b站上看动力节点的docker课程,整理了相关学习笔记,会按照学习进度慢慢更新的,加油2Docker引擎2.1Docker引擎发展历程2.1.1首发版本架构Docker在首次发布时,其引擎由两个核心组件构成:LXC(LinuxContainer)与DockerDaemon。不过,该架构依赖于LXC,使得Docker存在严重的......
  • 以Docker方式启动SonarQube
    以Docker方式启动SonarQube拉取镜像dockerpullpostgres:13dockerpullsonarqube:8.9-community运行容器启动postgresdockerrun\-d\--namepostgres\-p5432:5432\-ePOSTGRES_USER=sonar\-ePOSTGRES_PASSWORD=sonar\postgres:13启动SonarQ......
  • 修改docker容器网络
    ###解除容器绑定的网络网络名称root_default容器名称root_redis_1dockernetworkdisconnectroot_defaultroot_redis_1##删除原先的网络dockernetworkrmroot_default##重新创建容器网络dockernetworkcreate--subnet=172.22.16.0/24root_default7d40e0be1fcade91f......
  • 安装docker
    开始安装yuminstall-ydocker查看安装结果dockerversion开启docker服务systemctlstartdocker.service设置开机启动systemctlenabledocker.service配置DOCKER镜像下载加速vim/etc/docker/daemon.json打开编辑器,然后在加⼊加速镜像源地址,这⾥......
  • 查看docker是否开机启动
    查看是否已经设置docker开机启动systemctllist-unit-files|grepenable如果自启动服务中没有docker的服务,可以用以下命令设置docker开机启动systemctlenabledocker.service......
  • K8S-学习笔记-001-容器Docker和K8S
    K8S-学习笔记-001-容器Docker和K8S容器是什么?简单来说,它就是个小工具,可以把你想跑的程序,库文件,配置文件都一起“打包”。在任何一个计算机的节点上,都可以使用这个打好的包。有了容器,一个命令就能把你想跑的程序跑起来,做到了一次打包,就可以到处使用。比如:可以把整套Zabbix环境(httpd......
  • docker安装redis
    docker安装mysql1、下载镜像文件dockerpullmysql:5.72、创建实例并启动dockerrun-p3306:3306--namemysql\-v/mydata/mysql/log:/var/log/mysql\-v/mydata/mysql/data:/var/lib/mysql\-v/mydata/mysql/conf:/etc/mysql\-eMYSQL_ROOT_PASSWORD=root\-dmy......
  • mysql、redis、mongo本地docker部署命令备忘
    1mysqldocker环境部署####获取镜像dockerpullredis####启动mysqldockerrun--name=mysql-it-p3306:3306-eMYSQL_ROOT_PASSWORD=123456-dmysql####登录mysql-h127.0.0.1-P3306-uroot-p1234562redisdocker环境部署####官⽅方指引https://hub.docker.c......