Docker系列(15)- Commit镜像
docker commit 提交容器成为一个新的副本,有点像套娃 # 命令和git原理类似
docker commit -m="提交的描述信息" -a="作者" 容器id 目标镜像名:[TAG]
实战测试
#step-1 启动一个默认的tomcat
[root@localhost ~]# docker run -d -p 3355:8080 --name tomcat02 tomcat
57644fa210a03bfea17b961b804bb528a94935700f0074b084b0603f48521889
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57644fa210a0 tomcat "catalina.sh run" 15 seconds ago Up 14 seconds 0.0.0.0:3355->8080/tcp, :::3355->8080/tcp tomcat02
3b6ca0890fa0 portainer/portainer "/portainer" 33 minutes ago Up 28 minutes 0.0.0.0:8088->9000/tcp, :::8088->9000/tcp dreamy_robinson
#step-2 发现这个默认的tomcat没有webapps应用,镜像的原因,官方的镜像默认 webapps下面是没有文件的
[root@localhost ~]# docker exec -it 57644fa210a0 /bin/bash
root@57644fa210a0:/usr/local/tomcat# ls
BUILDING.txt CONTRIBUTING.md LICENSE NOTICE README.md RELEASE-NOTES RUNNING.txt bin conf lib logs native-jni-lib temp webapps webapps.dist work
root@57644fa210a0:/usr/local/tomcat# ls webapps/
root@57644fa210a0:/usr/local/tomcat# ls webapps.dist/
ROOT docs examples host-manager manager
#step-3 自己拷贝基本文件进去
root@57644fa210a0:/usr/local/tomcat# cp -r webapps.dist/* webapps/
root@57644fa210a0:/usr/local/tomcat# ls webapps/
ROOT docs examples host-manager manager
root@57644fa210a0:/usr/local/tomcat# exit
exit
#step-4 commit
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57644fa210a0 tomcat "catalina.sh run" 2 minutes ago Up 2 minutes 0.0.0.0:3355->8080/tcp, :::3355->8080/tcp tomcat02
3b6ca0890fa0 portainer/portainer "/portainer" 35 minutes ago Up 30 minutes 0.0.0.0:8088->9000/tcp, :::8088->9000/tcp dreamy_robinson
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tomcat 9.0 266d1269bb29 7 days ago 668MB
tomcat latest 266d1269bb29 7 days ago 668MB
nginx latest dd34e67e3371 8 days ago 133MB
elasticsearch 7.14.0 e347b2b2d6c1 3 weeks ago 1.04GB
portainer/portainer latest 580c0e4e98b0 5 months ago 79.1MB
centos latest 300e315adb2f 8 months ago 209MB
[root@localhost ~]# docker commit -m="add webapps file" -a="gelaotou" 57644fa210a0 tomcat_gelaotou:1.0
sha256:fabb99d62dfe97e8146d75b7a18840f812dff6c1c24916016012306735a9139a
#step-5 校验
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tomcat_gelaotou 1.0 fabb99d62dfe 6 seconds ago 673MB
tomcat 9.0 266d1269bb29 7 days ago 668MB
tomcat latest 266d1269bb29 7 days ago 668MB
nginx latest dd34e67e3371 8 days ago 133MB
elasticsearch 7.14.0 e347b2b2d6c1 3 weeks ago 1.04GB
portainer/portainer latest 580c0e4e98b0 5 months ago 79.1MB
centos latest 300e315adb2f 8 months ago 209MB

Docker系列(15)- Commit镜像的更多相关文章
- Docker 系列之 常用镜像
Ubuntu 实战 操作 # 拉取 18.04 版本的 Ubuntu 镜像 docker pull ubuntu:latest # 以交互方式运行并进入 ubuntu 容器环境 docker run ...
- docker 系列 - 企业级私有镜像仓库Harbor部署(转载)
本文转载自 搜云库 的文章 https://www.jianshu.com/p/7d76850de03f , 感谢作者 3.png 上一篇文章搭建了一个具有基础功能,权限认证.TLS 的私有仓库, ...
- Docker系列06—基于容器制作镜像并上传到Docker Registry
本文收录在容器技术学习系列文章总目录 1.制作镜像 1.1 镜像的生成途径 基于容器制作 dockerfile,docker build 本篇主要详细讲解基于容器制作镜像:基于dockerfile 制 ...
- Docker系列-(2) 镜像制作与发布
上篇文章引入了Docker的基本原理和操作,本节文章主要介绍如何制作Docker镜像和发布. 镜像文件结构 Docker镜像的本质是一系列文件的集合,这些文件依次叠加,形成了最后的镜像文件,类似于下图 ...
- Docker探索系列2之镜像打包与DockerFile
preface docker基本入门以后,可以试试打包docker镜像与dockerfile了 docker镜像 docker hub仓库有2类仓库,用户仓库和顶层仓库,用户仓库由docker用户创建 ...
- Docker系列之Docker镜像(读书笔记)
一.基本概念 Docker包括三个基本概念镜像.容器.仓库. Docker镜像:就是一个只读的模板.例如:一个镜像可以包含一个完整的ubuntu操作系统环境,里面仅安装了Apache或其他应用程序.用 ...
- docker系列(二):镜像
1 引言 将docker与汽车生产线类比,如果说docker引擎是汽车生产车间,那么容器就是最终的产品——汽车,而本节要介绍的镜像就如同汽车设计图纸,其重要性不言而喻——只有有了设计图(镜像),才能生 ...
- docker系列四之docker镜像与容器的常用命令
docker镜像与容器的常用命令 一.概述 docker的镜像于容器是docker中两个至关重要的概念,首先给各位读者解释一下笔者对于这两个概念的理解.镜像,我们从字面意思上看,镜子里成像,我们人 ...
- 【Docker】7. 镜像-加载原理、分层原理、commit镜像
一.什么是镜像 镜像是一种轻量级.可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件. 它包含运行某个软件所需的所有内容,包括代码.运行时环境.库.环境变量和配置文件. 所有的应用,直接 ...
- Docker系列教程01-使用Docker镜像
docker系列导读 一文带你读懂什么是docker Docker安装部署 10张图带你深入理解Docker容器和镜像 前言 学习Docker,我们需要掌握它的三大核心概念:镜像.容器和仓库. 今天先 ...
随机推荐
- Java TreeMap 和 LinkedHashMap【笔记】
Java TreeMap 和 LinkedHashMap[笔记] TreeMap TreeMap基本结构 TreeMap 底层的数据结构就是红黑树,和 HashMap 的红黑树结构一样 与HashMa ...
- LeetCode通关:栈和队列六连,匹配问题有绝招
刷题路线参考: https://github.com/chefyuan/algorithm-base https://github.com/youngyangyang04/leetcode-maste ...
- 武器级工具包 Immunity Canvas 7.26 泄露事件 | 附下载地址
关于Immunity Canvas Immunity CANVAS是Immunity公司的一款商业级漏洞利用和渗透测试工具,包含了480多个以上的漏洞利用,该工具并不开源,其中文版介绍如下: &quo ...
- 内网隧道与SOCKS代理思路总结
早就想总结一下这部分内容了,总是有其他事情卡住,一直拖到现在 内网中有很多边界设备,比如防火墙.这种边界设备会控制内部主机的对外连接,一般会仅允许某些种类的端口开放或某种数据流量出入 这就意味着我们只 ...
- S3C2440—10.代码重定位
文章目录 一.启动方式 1.1 NAND FLASH 启动 1.2 NOR FLASH 启动 二. 段的概念 2.1 重定位数据段 2.2 加载地址的引出 三.链接脚本 3.1 链接脚本的引入 3.2 ...
- 题解 [SDOI2010]所驼门王的宝藏
传送门 保分题再度爆零,自闭ing×2 tarjan没写vis数组,点权算的也有点问题 这题情况3的连边有点麻烦,考场上想了暴力想了二分就是没想到可以直接拿map水过去 不过map果然贼慢,所以这也是 ...
- Spring-Boot-Bean的使用,@Repository,@Service,@Controller,@Component
前言 在Spring MVC的时候,我们使用xml来配置bean,如今的Spring boot推荐我们使用元注解的发生,那就听Spring Boot的推荐,下面我就为大家来介绍下Spring Boot ...
- jvm系列(六):jvm调优-工具篇
## jdk自带的工具### jconsole Jconsole(Java Monitoring and Management Console)是从java5开始,在JDK中自带的java监控和管理控 ...
- Oracle基本用法(一)
一.简介 数据库:Oracle数据库的概念和其他数据库不一样,这里的数据库是一个操作系统只有一个库,可以看做Oracle就是一个大的数据库. 实例:一个Oracle实例有一系列的后台进程和内存结构组成 ...
- jQuery中ajax请求的六种方法(三、四):$.getJSON()方法
4.$.getJSON()方法 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...