010_Docker提交容器成镜像

Docker容器在使用过程中要经常提交备份成镜像。比如保存在容器中安装的内容。

运行起来的镜像就是容器,一个镜像可以创建多个容器。

提交镜像很重要,务必提交提交提交。

image.png

1.什么是提交?

在进入容器内后修改一些东西后安装某些工具后保存,以便下次run镜像时不用再次做同样的操作,这里假设已有一个镜像base,这个镜像是基于ubuntu:18.04 构建的,构建时只装了base库,没有ifconfig库。

image.png

2.提交容器的方法:

(1)查看容器id

docker ps -a

这里只有两个容器:

test01@test:~$ docker ps -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

e63d89aab255 ubuntu:18.04 "/bin/bash" 12 hours ago Exited (0) 12 hours ago version1

d88782fadf13 hello-world "/hello" 24 hours ago Exited (0) 24 hours ago crazy_ganguly

image.png

(2)进入容器,安装一些环境,退出。

test01@test:~$ docker start e63d89aab255

e63d89aab255

test01@test:~$ docker exec -it e63d89aab255 /bin/bash

image.png
image.png

(3)提交

提交的格式:

docker commit [选项] [容器ID或容器名] [仓库名:标签]

-a:修改人

-m:备注

test01@test:~$ docker ps -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

e63d89aab255 ubuntu:18.04 "/bin/bash" 12 hours ago Up 4 minutes version1

d88782fadf13 hello-world "/hello" 24 hours ago Exited (0) 24 hours ago crazy_ganguly

test01@test:~$ docker commit -m "add ifconfig" e63d89aab255 myubuntu1804:v0.0.1

sha256:2bdd57e3df51cba0044734cfaa97ae9d2c6f127eaa75501007f695f5ff02cfbb

test01@test:~$ docker image ls

REPOSITORY TAG IMAGE ID CREATED SIZE

myubuntu1804 v0.0.1 2bdd57e3df51 7 seconds ago 104MB

hello-world version2.0 d0354d8282cd 15 minutes ago 13.3kB

ubuntu 18.04 886eca19e611 9 days ago 63.1MB

hello-world latest feb5d9fea6a5 3 months ago 13.3kB

image.png

查看镜像,可以看到新镜像比旧镜像大了好多。

(4)删除老的镜像

test01@test:~$ docker rmi hello-world:version2.0

Untagged: hello-world:version2.0

Deleted: sha256:d0354d8282cdcec2266d71f7176aaa4926b36fecb3f0dfd23a4b4d3b3f2a08f1

image.png

原文:
Docker提交容器成镜像 - 知乎 (zhihu.com)
https://mp.weixin.qq.com/s/SJakWh0GOaCgFA5uzgdWRQ

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • body { width: 35em; margin: 0 auto; font-famil...
    联旺阅读 324评论 0 0
  • Docker 镜像使用 列出镜像列表 [root@web1 ~]# docker images REPOSITOR...
    W朱珠W阅读 585评论 0 0
  • 一、安装 1、卸载旧版本 yum remove docker docker-client docker-clien...
    JaydenGoh阅读 301评论 0 1
  • 常用指令 帮助指令 docker version 用于查询docker的客户端和服务器端版本。 以下是执行过程和查...
    source201阅读 350评论 0 0
  • 一、需求由于在测试环境中使用了docker官网的centos 镜像,但是该镜像里面默认没有安装ssh服务,在做测试...
    虾米在海飘阅读 973评论 0 3