1、創建基礎鏡像,默認是創建最新版本:
docker pull centos
2、使用基礎鏡像創建一個容器:
docker run --name centos1 -itd centos:latest /bin/bash
注:-i表示讓容器的標準輸入打開,-t表示分配一個僞終端,-d表示後臺啓動,要把-i -t -d 放到鏡像名字前面,--name指定容器名。
3、進入後臺運行的容器:
docker exec -it centos1 /bin/bash
4、創建一個文件:
vi test.txt
裏面輸入helloworld
5、退出容器:
exit
6、創建新鏡像
指定tag
docker commit -m='A new image' --author='gjk' centos1 jack/storagename:tagName
不指定tag,默認tag爲latest
docker commit -m='A new image' --author='gjk' centos1 jack/storagename
規範的鏡像名應該爲:
[username/]repositoryName[:tagName]
如果沒有tagName,則默認爲latest。
注意:如果需要把該鏡像提交到dokcer hub中心,則必須規範命名(必須是 用戶名/倉庫名,tag可以缺省),前面的用戶名是在dokcer hub上註冊的用戶名。
命令中,指定了要提交的修改過的容器的容器名當然使用容器的id也可以、目標鏡像倉庫、鏡像名。commit提交的只是創建容器的鏡像與容器的當前狀態之間的差異部分,很輕量,-m爲備註信息,--auth爲作者類似於git的操作,tag默認爲latest,如果指定則按照指定的來
commit以後只是將鏡像保存在了本地,可以通過docker images 查看剛剛創建的鏡像。使用剛剛創建的鏡像生成容器裏面可以看到一件包含了test.txt文件。
7、將鏡像推送到DockerHub
docker push jack/storagename