1、commit:根据容器的更改创建新镜像
A)语法
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
B)选项
1 -a, --author string Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
2 -c, --change list Apply Dockerfile instruction to the created image
3 -m, --message string Commit message
4 -p, --pause Pause container during commit (default true)
C)实例
docker commit -m="Added Apache to Fedora base image" -a="Administrator" 98bd7fc99854 fedora/fedora_httpd:20 #通过一个已存在的容器创建新镜像
docker commit -c="ENV DEBUG true" 98bd7fc99854 debug-image #如果现有的容器创建没有调试环境变量设置为"true",您可以创建一个新的图像基于容器首先得到容器的ID通过docker ps,然后通过-c参数指定
2、cp:在容器和本地文件系统之间复制文件/文件夹
A)语法
1 docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
2 docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
B)选项
-a, --archive Archive mode (copy all uid/gid information)
-L, --follow-link Always follow symbol link in SRC_PATH
C)实例
docker cp anaconda-ks.cfg mymysql:/tmp #把宿主机的anaconda-ks.cfg文件复制到mymysql容器的tmp目录下
docker exec -it mymysql ls -l /tmp #检查下
total 4
-rw------- 1 root root 1295 Apr 22 2018 anaconda-ks.cfg
#如果想从容器内复制东西(文件/文件夹)到宿主机,把两个路径对反过来就行了
3、diff:检查容器文件系统上文件或目录的更改
A)语法
B)实例
docker diff mymysql #以下:C为修改,A为添加,可以看到刚才复制进去的anaconda-ks.cfg文件
C /root
A /root/.bash_history
C /run/mysqld
A /run/mysqld/mysqld.pid
A /run/mysqld/mysqld.sock
A /run/mysqld/mysqld.sock.lock
C /tmp
A /tmp/anaconda-ks.cfg