From 79934ad3e1669a60815677d1649601abdeb00bad Mon Sep 17 00:00:00 2001 From: Baohua Yang Date: Fri, 12 Sep 2014 15:36:21 +0800 Subject: [PATCH] Add figure for the command logic --- command/README.md | 20 ++++------------ images/cmd_logic.dot | 56 +++++++++++++++++++++++++++++++++++++++++++ images/cmd_logic.png | Bin 0 -> 39059 bytes 3 files changed, 61 insertions(+), 15 deletions(-) create mode 100644 images/cmd_logic.dot create mode 100644 images/cmd_logic.png diff --git a/command/README.md b/command/README.md index 938b201..911ae87 100644 --- a/command/README.md +++ b/command/README.md @@ -2,21 +2,7 @@ ##基本语法 docker [OPTIONS] COMMAND [arg...] - - -DESCRIPTION - docker has two distinct functions. It is used for starting the Docker daemon and to run the CLI (i.e., to command the daemon to manage images, containers - etc.) So docker is both a server, as a daemon, and a client to the daemon, through the CLI. - - - To run the Docker daemon you do not specify any of the commands listed below but must specify the -d option. The other options listed below are for the - daemon only. - - - The Docker CLI has over 30 commands. The commands are listed below and each has its own man page which explain usage and arguments. - - - To see the man page for a command run man docker . +一般来说,docker命令可以用来管理daemon,或者通过CLI命令管理image和container。可以通过man docker来查看这些命令。 ##选项 @@ -176,3 +162,7 @@ docker的命令可以采用`docker-CMD`或者`docker CMD`的方式执行。两 docker-wait(1) 阻塞直到一个容器终止,然后输出它的退出符 + +##一张图总结docker的命令周期 + +![命令周期](../images/cmd_logic.png) diff --git a/images/cmd_logic.dot b/images/cmd_logic.dot new file mode 100644 index 0000000..01d859d --- /dev/null +++ b/images/cmd_logic.dot @@ -0,0 +1,56 @@ +//dot -Tpng xx.dot -o xx.png +digraph G { + rankdir=TB; + fontname = "Microsoft YaHei"; + fontsize = 14; + penwidth = 3; + compound=true; + rankdir=LR; + + node [shape = record]; + edge [fontname = "Arial", fontsize = 12, color="darkgreen" ]; + + image[label="Image",color=blue]; + registry[label="Registry",color=blue]; + tar[label="Tar files",color=blue]; + + subgraph cluster_container { + label = "Container"; + style = "bold"; + color = blue; + edge [fontname = "Arial", fontsize = 11, color="skyblue" ]; + //node [style=filled]; + run[label="Running",shape=circle, style=filled, fillcolor=green]; + stop[label="Stopped",shape=circle, style=filled, fillcolor=red]; + pause[label="Paused",shape=circle, style=filled, fillcolor=blue]; + + run->pause[label="pause"]; + pause->run[label="unpause"]; + run->run[label="restart"]; + run->stop[label="kill"]; + stop->run[label="start"]; + } + + run->image[label="commit",ltail=cluster_container]; + image->run[label="start"]; + + image->tar[label="export|save"]; + tar->image[label="import"]; + + image->registry[label="push"]; + registry->image[label="pull"]; + + //heat[label="heat commands",color=blue]; + //heatshell[label="heatclient.shell.HeatShell",color=blue]; + //shell[label="{heatclient.v1.shell|+do_stack_create\l+do_stack_show\l+do_stack_update\l...\l+do_event_list\l...\l+do_resource_list\l...\l+do_resource_type_show\l...\l+do_template_show\l...\l}",color=blue]; + //heatclient[label="heatclient.client.Client",color=blue]; + //client[label="heatclient.v1.client.Client",color=blue]; + //httpclient[label="heatclient.common.http.HTTPClient",color=blue]; + + + + //openstackservices[label="{OpenStack Services|+Nova\l+Neutron\l+Keystone\l...}",color=blue]; + + //{rank=same; image cluster_container} + //{rank=same; rpcproxy apimixin} +} diff --git a/images/cmd_logic.png b/images/cmd_logic.png new file mode 100644 index 0000000000000000000000000000000000000000..8812c9d0b2a7785b3d48a54848efba28b881f915 GIT binary patch literal 39059 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 literal 0 HcmV?d00001