【docker】深入探讨container,通过container生成image

2023-05-16

深入探讨container

对于上图的理解:

        image其实是由一层一层的layer来组成的,最底层基于linux内核在上面加了一层一层的layer,从docker仓库pull的image是由Dockerfile来生成,这个image是只读的不可更改的,container是由images运行而来的,可以理解为container是在images层上又加了一层,只不过container层是可以进行读写的.

        思考:类比java反编译,我们可以使用image得到container,那么我们能不能使用container得到image呢?

        下面我们就来进行验证:

1.docker pull tomcat

    拉取一个tomcat image

2.docker run -d --name my-tomcat -p 8082:8080 tomcat

    运行tomcat container

3.docker exec -it my-tomcat /bin/bash

    进入tomcat并查看tomcat目录

4.创建目录 my-home,退出tomcat

5.docker commit my-tomcat my-home-tomcat

    将其生成一个新的image,命名为my-home-tomcat

6.docker run -d --name my-home-tomcat-01 -p 8083:8080 my-home-tomcat

    基于my-home-tomcat这个image重新运行一个container

7.进入my-home-tomcat-01 container,并查看文件列表,发现是存在my-home目录的

 结论:可以使用docker commit命令基于container来生成一个image,这时候可以对container来做一些定制化的操作,但是一般不

建议使用此方式生成image.

 

container的一些常见命令:

根据镜像创建容器: docker run -d --name -p 9090:8080 my-tomcat tomcat

查看运行中的container: docker ps

查看所有的container[包含退出的]: docker ps -a

删除container: docker rm containerid docker rm -f $(docker ps -a) 删除所有container

进入到一个container中: docker exec -it container bash

根据container生成image: docker commit my-tomcat my-home-tomcat

查看某个container的日志: docker logs container

查看容器资源使用情况: docker stats

查看容器详情信息: docker inspect container

停止/启动容器: docker stop/start container

 


 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【docker】深入探讨container,通过container生成image 的相关文章

  • 为什么docker容器提示“权限被拒绝”?

    我使用以下命令来运行 docker 容器 并从主机映射目录 root database 到容器 tmp install database docker run it name oracle install v root database t
  • 超大图像缩小后变得模糊

    这是我第一次尝试响应式设计 所以如果这是一个愚蠢的简单问题 请原谅 我创建了一个图像并将其最大宽度设置为不大于图像的实际宽度 因为我知道放大图像会导致模糊不清 我有点困惑的是 当我缩小窗口并且图像开始缩小时 它也变得模糊 这是正确的行为吗
  • 帮助将二进制图像数据从 SQL Server 读取到 PHP 中

    我似乎无法找到将二进制数据从 SQL 服务器读取到 PHP 的方法 我正在开发一个项目 需要能够将图像直接存储在 SQL 表中 而不是文件系统上 目前 我一直在使用这样的查询 插入 myTable 文档 选择 从 OPENROWSET BU
  • 将标题和图像添加到导航栏

    我需要将 UIViewController 的名称和图像设置为导航栏 到目前为止 我可以显示图像 但标题当然丢失了 show image UIImage image UIImage imageNamed bar icon png UIIma
  • 代码如何从 Android Gallery 加载图像

    我有用于从图库加载图像的代码 但我真的不明白它是如何工作的 这是代码 Override protected void onActivityResult int requestCode int resultCode Intent data s
  • 有没有办法将图像异步加载到用户缓存?

    我有一份物品清单 它们每个都是一个带有名称的正方形 当用户将鼠标悬停在正方形上时 将显示一个图像 这是由 jQuery 完成的 代码是这样的 square hover function var link this attr title th
  • 如何在移动设备上使用纯 JavaScript 放大点击的图像

    我正在尝试创建单击时会放大的缩略图 目标是将选定的缩略图自身放大到设备的最大宽度 如果单击另一个缩略图 其图像将替换当前所选缩略图的图像 同一时间只能放大一张缩略图 图像应跨越设备的最大宽度 另外 我尝试使用纯 JavaScript 无 j
  • Google AJAX API - 如何获得 4 个以上结果?

    我使用下面的 google API ajax 来获取特定搜索词的图像 这是在一个WinForms app 下面的链接似乎有效 但它只返回 4 个结果 通过 JSON 有谁知道如何哄得更多吗 显然必须有另一个参数来请求更多或分页结果 但我似乎
  • Daphne Django 文件上传大小限制

    我使用 Daphne 进行套接字和 http 连接 我正在运行 4 个工作容器 并且现在在 docker 容器中本地运行所有内容 如果我尝试上传 400MB 的文件 我的 daphne 服务器会失败 它适用于最大 15MB 的小文件 我的
  • Docker 容器中的并行代码执行

    我有一个通过 URLslist 抓取数据的脚本 该脚本在 docker 容器中执行 我想在多个实例中运行它 例如 20 个 为此 我想使用docker compose scale worker 20并将 INDEX 传递给每个实例 以便脚本
  • 没有足够的熵来支持在 boot2docker 中运行的 docker 容器中的 /dev/random

    在虚拟化 Linux 系统中耗尽熵似乎是一个常见问题 例如 dev random 非常慢 https stackoverflow com questions 4819359 dev random extremely slow 让 linux
  • Heroku 码头部署

    我正在关注这篇文章https devcenter heroku com articles container registry and runtime https devcenter heroku com articles containe
  • Docker 网络 - nginx:[emerg] 在上游找不到主机

    我最近开始迁移到 Docker 1 9 和 Docker Compose 1 5 的网络功能来取代使用链接 到目前为止 通过链接 nginx 通过 docker compose 连接到位于一组中不同服务器中的 php5 fpm fastcg
  • 在 tlistbox 中绘制缩略图

    在 DelphiXE 中 我使用 tFileOpenDialog 选择一个文件夹 然后在 tListBox 中列出该文件夹中的所有 jpg 文件 我允许将列表项拖放到列表中进行自定义排序 以便稍后按顺序显示它们 我希望能够在文件名旁边绘制图
  • 在电子邮件中嵌入背景图像

    我正在尝试使用电子邮件中的嵌入图像作为背景图像 我有以下代码来嵌入它 LinkedResource backgroundLink new LinkedResource background gif backgroundLink Conten
  • 开发者环境-如何调用/消费其他微服务

    背景 我的环境 Java Play2 MySql 我在 Play2 gt S1 S2 S3 上编写了 3 个无状态 Restful 微服务 S1 消耗来自 S2 和 S3 的数据 因此 当用户点击 S1 时 该服务会异步调用 S2 S3 合
  • 如何将MathJax公式转换为img

    Mathjax 现在在我的项目中运行良好 但有一个问题 有没有办法将MathJax的公式 纯html和css 转换成img文件 我可以保存 MathJax 可以配置为生成 SVG 看http docs mathjax org en late
  • Docker、maven 和 settings.xml

    给出以下简单的 Dockerfile FROM maven 3 6 3 ibmjava 8 alpine Copy maven settings COPY settings xml usr share maven ref COPY pom
  • 使用前端 Dockerfile 无法解决

    我对 Docker 还很陌生 正在尝试使用纯 HTML 构建 Docker 映像 但我收到此错误消息 无法使用前端 dockerfile v0 解决 无法读取 dockerfile 打开 var lib docker tmp buildki
  • Drupal 8 图像与图像样式

    在drupal 7中 我使用函数image style url style uri 生成具有样式的新图像并返回图像的路径 那么在 drupal 8 中会用什么来代替它呢 谢谢 Per the 变更记录 https www drupal or

随机推荐