docker 3:创建镜像

前面我们下载了一个centos7的镜像,然后通过容器运行之后,在容器中的配置想保存成镜像,可以做如下操作:

[root@localhost ~]# docker run -it centos:centos7 /bin/bash
[root@93b35bb0c041 /]# cd home/
[root@93b35bb0c041 home]# touch 1.txt
[root@93b35bb0c041 home]# ll
total 0
-rw-r--r--. 1 root root 0 Mar 31 08:51 1.txt
[root@93b35bb0c041 home]# exit
exit
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE            COMMAND       CREATED              STATUS                     PORTS     NAMES
93b35bb0c041   centos:centos7   "/bin/bash"   About a minute ago   Exited (0) 8 seconds ago             epic_darwin
[root@localhost ~]# docker commit -m="touch file" -a="zhangsan" 93b35bb0c041 zhangsan/centos7:v1
sha256:ee2795e598675aa3e831dbd66b0bdc578b5c2da340f3e0cc800fc021d23a148d

各个参数说明:

  • -m: 提交的描述信息

  • -a: 指定镜像作者

  • 93b35bb0c041容器 ID
  • runoob/ubuntu:v2: 指定要创建的目标镜像名

[root@localhost ~]# docker images 
REPOSITORY         TAG       IMAGE ID       CREATED          SIZE
zhangsan/centos7   v1        ee2795e59867   18 seconds ago   204MB
centos             latest    300e315adb2f   3 months ago     209MB
centos             centos7   8652b9f0cb4c   4 months ago     204MB

  然后我们以我们自己创建的镜像运行,查看下之前创建的1.txt还在,说明镜像创建成功。

[root@localhost ~]# docker run -it zhangsan/centos7:v1 /bin/bash
[root@4300e911311e /]# cd /home/
[root@4300e911311e home]# ll
total 0
-rw-r--r--. 1 root root 0 Mar 31 08:51 1.txt

  以上是通过修改更新镜像的方式创建镜像,接下来我们使用命令 docker build , 从零开始来创建一个新的镜像。

原文地址:https://www.cnblogs.com/tortoise512/p/14602518.html