Docker 的镜像管理设计中大量借鉴了 Git 的理念。
下面这张图将对两者的核心概念和操作进行比较,有助于大家快速掌握管理 Docker 镜像的正确方式。
Series Status Releases Date Kilo Under development Due Apr 30, 2015 Juno Current stable release, security-supported 2014.2 Oct 16, 2014 Icehouse Security-supported 2014.1 Apr 17, 2014 Havana EOL 2013.2 Oct 17, 2013 Grizzly EOL 2013.1 Apr 4, 2013 Folsom EOL 2012.2 Sep 27, 2012 Essex EOL 2012.1 Apr 5, 2012 Diablo EOL 2011.3 Sep 22, 2011 Cactus Deprecated 2011.2 Apr 15, 2011 Bexar Deprecated 2011.1 Feb 3, 2011 Austin Deprecated 2010.1 Oct 21, 2010
ip netns
系列命令。这些命令负责操作系统中的网络名字空间。add
命令创建一个临时的网络名字空间$ip netns add test
show
命令来查看系统中的网络名字空间,会看到刚创建的 test 名字空间。$ip netns show test
exec
,会在对应名字空间内执行命令。例如$ ip netns exec test ifconfig
del
命令删除刚创建的 test 名字空间。$ip netns del test
$ docker run -it ubuntu
ip netns show
命令。很遗憾,这里什么输出都没有。$ docker inspect --format='{{. State.Pid}} ' $container_id 1234
$ ln -s proc/1234/ns/net /var/run/netns/
$ip netns show 1234 $ ip netns exec 1234 ifconfig eth0 172.16.0.10/16
$ gem install keydown $ keydown generate my_presentation
$ keydown slides
!SLIDE # My Presentation #! SLIDE bullets incremental transition=fade # Bullet Points # * first point * second point * third point
$ gem install showoff $ git clone (showoff-repo) $ cd (showoff-repo) $ showoff serve
title: Basic Example author: name: Jordan Scales twitter: jdan url: http://jordanscales.com output: basic.html controls: true -- # Cleaver 101 ## A first look at quick HTML presentations -- ### A textual example Content can be written in **Markdown!** New lines no longer need two angle brackets. This will be in a separate paragraph -- ### A list of things * Item 1 * Item B * Item gamma No need for multiple templates!
npm install -g cleaver cleaver path/to/something.md
pip install landslide
landslide slides.md
$ docker exec ubuntu_bash -it bash
$ docker create -t -i fedora bash 6d8af538ec541dd581ebc2a24153a28329acb5268abe5ef868c1f1a261221752
$ docker start -a -i 6d8af538ec5
bash-4.2#
--security-opt
选项来指定系统的安全选项,包括 SELinux 和 AppArmor 的标签等。 例如 $ docker run --security-opt label:type:svirt_apache -i -t centos \ bash
--privileged
,从而提高使用容器的安全性。$ docker run -v /Users/bob/myapp/src:/src [...]
/Users/bob/myapp/src
目录到容器内。