我們運行的容器可能在鏡像的基礎上做了一些修改,
有時候我們希望保存起來,封裝成一個新的鏡像。
可以使用docker提供commit功能。
現在以centos為例,在一個裸的centos上面安裝vim編輯器,
並且把這個修改保存下來,封裝成一個能執行vim命令的centos鏡像。
1.啟動鏡像並做出修改
docker run -it centos /bin/bash
[root@afcaf46e8305 /]#
注意afcaf46e8305是產生的容器ID,前面運行的時候不要-d后台運行了,不然無法進入容器交互執行模式:
安裝vim並且退出容器:
yum install -y vim
exit
2.把容器打包成鏡像
docker commit afcaf46e8305 centos-vim
3.查看鏡像centos-vim
docker images | grep centos-vim
查看鏡像的詳細信息:
docker inspect centos-vim:afcaf46e8305
4.使用centos-vim這個鏡像
docker run -it centos-vim /bin/bash
發現可以直接使用vim了,而不需要重新安裝:
vim --version
5.OPTIONS說明
-a :提交的鏡像作者;
-c :使用Dockerfile指令來創建鏡像;
-m :提交時的說明文字;
-p :在commit時,將容器暫停。
將容器a404c6c174a2 保存為新的鏡像,並添加提交人信息和說明信息。
docker commit -a "runoob.com" -m "my apache" a404c6c174a2 mymysql:v1