先使用image啓動容器,更新後提交結果到新的image。docker
$ sudo docker run -t -i training/sinatra /bin/bashjson
root@0b2616b0e5a8:/#bash
注意:記住容器的ID ,稍後咱們還會用到工具
這裏咱們在容器中添加json gemspa
root@0b2616b0e5a8:/# gem install json3d
當結束後,咱們使用exit來退出,如今咱們的容器已經被咱們改變了,使用docker commint命令版本控制
來提交相應的副本。orm
$ sudo docker commit -m="Added json gem" -a="Kate Smith" 0b2616b0e5a8 ouruser/sinatra:v2it
4f177bd27a9ff0f6dc2a830403925b5360bfe0b93d476f7fc3231110e7f71b1ctest
-m 來指定提交的信息,跟咱們使用的版本控制工具同樣。
-a 能夠指定咱們更新的用戶信息指定咱們要從哪一個容器ID來建立咱們的副本,最後指定目標image
的名字。
這個例子裏面,咱們指定了一個新用戶,ouruser,使用了sinatra的image,最後指定了image的
標記v2。
使用docker images來查看咱們建立的新image。
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
training/sinatra latest 5bc342fa0b91 10 hours ago 446.7 MB
ouruser/sinatra v2 3c59e02ddd1a 10 hours ago 446.7 MB
ouruser/sinatra latest 5db5f8471261 10 hours ago 446.7 MB
使用新的image來啓動容器
$ sudo docker run -t -i ouruser/sinatra:v2 /bin/bash
root@78e82f680994:/#