返回顶部
首页 > 资讯 > 精选 >docker中镜像的commit怎么用
  • 267
分享到

docker中镜像的commit怎么用

2023-06-04 14:06:44 267人浏览 薄情痞子
摘要

这篇文章将为大家详细讲解有关Docker中镜像的commit怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。    docker commit:表示提交容器副本

这篇文章将为大家详细讲解有关Docker中镜像的commit怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

    docker commit:表示提交容器副本使之成为一个新的镜像。假设我们在docker中运行了一个Tomcat容器,我们在tomcat容器中做了一些我们自定义的修改,然后我们这个修改的tomcat容器进行commit,这样我们就形成了一个新的自定义镜像。

    命令格式:docker commit -m="提交的描述信息" -a="作者"  容器id  要创建的目标镜像名:[标签名]

    案例演示

    1、从hub上下载tomcat镜像到本地并成功运行    

        说明:-p是指定端口,-P是随机端口       

[root@t-docker chenzx]# docker images tomcatREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEtomcat              latest              690cb3b9c7d1        7 days aGo          463MB[root@t-docker chenzx]# docker run -it -p 8888:8080 tomcatUsing CATALINA_BASE:   /usr/local/tomcatUsing CATALINA_HOME:   /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME:        /docker-java-home/jre30-Aug-2018 08:37:01.728 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["Http-NIO-8080"]30-Aug-2018 08:37:01.736 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]30-Aug-2018 08:37:01.739 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 555 ms[root@t-docker chenzx]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES5c83a1f3aea4        tomcat              "catalina.sh run"   8 minutes ago       Up 8 minutes        0.0.0.0:8888->8080/tcp   quirky_zhukovsky
[root@t-docker chenzx]# docker run -it -P tomcat[root@t-docker chenzx]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES54a817e3ce05        tomcat              "catalina.sh run"   21 seconds ago      Up 19 seconds       0.0.0.0:32768->8080/tcp   confident_leavitt

     2、故意删除上一步镜像生成的tomcat容器文档

[root@t-docker chenzx]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES54a817e3ce05        tomcat              "catalina.sh run"   17 minutes ago      Up 17 minutes       0.0.0.0:32768->8080/tcp   confident_leavitt[root@t-docker chenzx]# docker exec -it 54a817e3ce05 /bin/bashroot@54a817e3ce05:/usr/local/tomcat# cd WEBapps/root@54a817e3ce05:/usr/local/tomcat/webapps# ls -ltotal 4drwxr-x---  3 root root  306 Aug 23 00:47 ROOTdrwxr-x--- 14 root root 4096 Aug 23 00:47 docsdrwxr-x---  6 root root   83 Aug 23 00:47 examplesdrwxr-x---  5 root root   87 Aug 23 00:47 host-managerdrwxr-x---  5 root root  103 Aug 23 00:47 managerroot@54a817e3ce05:/usr/local/tomcat/webapps# rm -rf docs/root@54a817e3ce05:/usr/local/tomcat/webapps# ls -ltotal 0drwxr-x--- 3 root root 306 Aug 23 00:47 ROOTdrwxr-x--- 6 root root  83 Aug 23 00:47 examplesdrwxr-x--- 5 root root  87 Aug 23 00:47 host-managerdrwxr-x--- 5 root root 103 Aug 23 00:47 manager

    3、通过上一步,当前的Tomcat运行实例是一个没有文档内容doc目录的容器,以它为模板commit一个没有doc的tomcat新镜像chenzx/tomcat02,chenzx就是自己取的命名空间

[root@t-docker chenzx]# docker ps CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES54a817e3ce05        tomcat              "catalina.sh run"   26 minutes ago      Up 26 minutes       0.0.0.0:32768->8080/tcp   confident_leavitt[root@t-docker chenzx]# docker commit -a='xiaoxin' -m='del tomcat docs' 54a817e3ce05 chenzx/tomcat02:1.2sha256:24c3D89d4d043e4fb97f0cf4f3b94bcf96b5600a062fc8de4e39a7763d20badf[root@t-docker chenzx]# docker imagesREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEchenzx/tomcat02     1.2                 24c3d89d4d04        7 seconds ago       463MBtomcat              latest              690cb3b9c7d1        7 days ago          463MB

    4、把正在运行的容器全部删除

[root@t-docker chenzx]# docker rm -f $(docker ps -q)54a817e3ce05[root@t-docker chenzx]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

    5、以我们自定义的镜像生成一个新的容器

[root@t-docker chenzx]# docker imagesREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEchenzx/tomcat02     1.2                 24c3d89d4d04        6 minutes ago       463MBtomcat              latest              690cb3b9c7d1        7 days ago          463MBCentos              latest              5182e96772bf        3 weeks ago         200MB[root@t-docker chenzx]# [root@t-docker chenzx]# docker run -it -P chenzx/tomcat02:1.2 [root@t-docker chenzx]# docker psCONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS              PORTS                     NAMESc6c68b224e84        chenzx/tomcat02:1.2   "catalina.sh run"   24 seconds ago      Up 24 seconds       0.0.0.0:32770->8080/tcp   awesome_sammet

    可以看到,我们用自定义的jtomcat1.2镜像,生成的容器里面没有doc目录

    6、启动我们的新镜像并和原来的镜像对比

    启动chenzx/tomcat1.2,它没有docs目录

    启动原来tomcat。它有docs目录

    7、以守护式方式启动tomcat容器(-d参数)

[root@t-docker chenzx]# docker run -d -p 6666:8080 tomcat23b4ec6f24b854f682631c5a9b6bcfc0c685dbec46d1867faea4b534f5791452[root@t-docker chenzx]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES23b4ec6f24b8        tomcat              "catalina.sh run"   5 seconds ago       Up 4 seconds        0.0.0.0:6666->8080/tcp   flamboyant_almeida

关于“docker中镜像的commit怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: docker中镜像的commit怎么用

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

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

猜你喜欢
  • docker中镜像的commit怎么用
    这篇文章将为大家详细讲解有关docker中镜像的commit怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。    docker commit:表示提交容器副本...
    99+
    2023-06-04
  • Docker镜像构建中docker commit怎么使用
    这篇“Docker镜像构建中docker commit怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Doc...
    99+
    2023-06-29
  • Docker镜像的commit操作是什么
    这篇文章主要介绍“Docker镜像的commit操作是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker镜像的commit操作是什么”文章能帮助大家解决问题。Docker 镜像是什么&n...
    99+
    2023-06-30
  • Docker镜像的commit操作示例及作用
    目录Docker 镜像是什么 UnionFS(联合文件系统)Docker 镜像加载原理分层的镜像Docker 镜像 commit 操作docker commit ...
    99+
    2024-04-02
  • Docker镜像提交命令commit如何使用
    这篇文章主要介绍“Docker镜像提交命令commit如何使用”,在日常操作中,相信很多人在Docker镜像提交命令commit如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2024-04-02
  • Docker如何从容器的修改中创建镜像commit
    小编给大家分享一下Docker如何从容器的修改中创建镜像commit,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!从容器的修改中...
    99+
    2024-04-02
  • Docker容器的加载分层原理及commit镜像
    目录Docker容器的加载原理、分层原理、commit镜像一、什么是镜像二、docker镜像加载原理1. 联合文件系统UnionFS2. 镜像加载原理三、分层原理四、com...
    99+
    2024-04-02
  • docker中怎么用build制作镜像
    在Docker中,可以使用`docker build`命令来制作镜像。 首先,在项目的根目录下创建一个名为`Dockerfile`的...
    99+
    2023-10-26
    docker
  • docker镜像中json的作用
    docker镜像中json的作用:静态的镜像,如何才有能力转化为一个动态的 Docker 容器呢?此时,我们可以想象:第一,转化的依据是什么;第二,由谁来执行这个转化操作。转化的依据是每个镜像的 json 文件,Docker 可以通过解析 ...
    99+
    2023-06-04
  • Docker中怎么样制作镜像
    小编给大家分享一下Docker中怎么样制作镜像,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言以制作CentOS镜像为例,讲述对镜像自定义,打包以及推送的远程仓...
    99+
    2023-06-25
  • docker怎么拉取镜像
    这篇文章主要为大家展示了“docker怎么拉取镜像”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“docker怎么拉取镜像”这篇文章吧。拉取镜像docker&nb...
    99+
    2024-04-02
  • docker怎么创建镜像
    创建Docker镜像的步骤如下:1. 编写Dockerfile:创建一个文本文件,命名为Dockerfile,并在其中描述镜像的构建...
    99+
    2023-09-16
    docker
  • Docker镜像提交命令commit的工作原理以及使用方法
    这篇文章主要讲解了“Docker镜像提交命令commit的工作原理以及使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Docker镜像提交命令commit的工作原理以及使用方法”吧!在...
    99+
    2023-06-04
  • docker怎么运行windows镜像
    要在Docker中运行Windows镜像,需要确保已经安装了Docker Desktop for Windows,并且在Docker...
    99+
    2023-09-18
    windows docker
  • Docker怎么删除none镜像
    这篇文章主要介绍“Docker怎么删除none镜像”,在日常操作中,相信很多人在Docker怎么删除none镜像问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker怎么删除none镜像”的疑惑有所帮助!...
    99+
    2023-06-27
  • docker怎么运行ubuntu镜像
    要在Docker中运行Ubuntu镜像,您可以按照以下步骤操作:1. 首先,确保您已经安装了Docker。可以在终端中运行以下命令来...
    99+
    2023-08-23
    docker ubuntu
  • docker怎么安装ubuntu镜像
    要安装Ubuntu镜像,您需要执行以下步骤: 首先,确保您已经安装了Docker。如果您还没有安装Docker,请根据您的操作系...
    99+
    2023-10-26
    docker ubuntu
  • jenkins怎么构建docker镜像
    Jenkins是一个持续集成和持续交付(CI/CD)工具,可以用来自动化构建、测试和部署应用程序。要在Jenkins中构建Docke...
    99+
    2023-10-27
    jenkins docker
  • docker怎么构建centos镜像
    要构建一个CentOS镜像,可以按照以下步骤操作: 首先,需要在本地安装Docker。可以在官方网站上下载适合您操作系统的Doc...
    99+
    2023-10-27
    docker centos
  • Node.js项目中怎么优化docker镜像
    这篇文章给大家介绍Node.js项目中怎么优化docker镜像,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Node 项目简单写了一个自己用的 wechat-bot ,接下来就以这个项...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作