一、概述
創建鏡像有兩種方法,一是用commit命令,二是用dockerfile方法(這個更常用,在下面文章介紹)。本章介紹commit方法。
在介紹commit命令前,我們先回顧下對代碼的版本控制,當修改代碼后,我們會commit變更到版本服務器上。
對於容器類似的概念,當創建容器后,如果后面對容器做了修改,就可以利用commit命令將修改提交為一個新的鏡像。
二、例子說明
下面我們通過具體的例子來說明:
1、創建新容器
docker run --name newcontent -i -t ubuntu /bin/bash
2、進行操作,修改容器內容
echo hello world >>test.txt //通過重定向功能創建一個文件
3、退出shell,容器關閉
4、用diff命令查看容器的變化信息
xxx@ubuntu:~$ docker diff newcontent C /root A /root/.bash_history A /test.txt
5、創建新鏡像
docker commit newcontent newnewcontent2
這時就在本地創建了一個倉庫名為newnewcontent2,tag值為默認為latest的鏡像。
規范的鏡像名應該為:
[username/]repositoryName[:tagName]
如:docker commit newcontent jeme/myubuntu:1.0
如果沒有tagName,則默認為latest。
注意:如果需要把該鏡像提交到dokcer hub中心,則必須規范命名(必須是 用戶名/倉庫名,tag可以缺省),前面的用戶名是在dokcer hub上注冊的用戶名。
三、刪除本地鏡像
docker rmi 鏡像名/ID
