先使用image启动容器,更新后提交结果到新的image。
$ sudo docker run -t -i training/sinatra /bin/bash
[email protected]:/#
注意:记住容器的ID ,稍后我们还会用到
这里我们在容器中添加json gem
[email protected]:/# gem install json
当结束后,我们使用exit来退出,现在我们的容器已经被我们改变了,使用docker commint命令
来提交相应的副本。
$ sudo docker commit -m="Added json gem" -a="Kate Smith" 0b2616b0e5a8 ouruser/sinatra:v2
4f177bd27a9ff0f6dc2a830403925b5360bfe0b93d476f7fc3231110e7f71b1c
-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
[email protected]:/#