Docker后台进程参数清单如下表:
注意,其中带有[] 的启动参数可以指定多次,例如 $ docker run -a stdin -a stdout -a stderr -i -t ubuntu /bin/bash 2. Docker命令行探秘2.1 环境信息相关info 使用方法: docker info 例子: [fedora@docker-devel-cli docker]$ sudo docker -D infoContainers: 0Images: 32Storage Driver: devicemapper Pool Name: docker-252:1-130159-pool Data file: /var/lib/docker/devicemapper/devicemapper/data Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata Data Space Used: 1616.9 Mb Data Space Total: 102400.0 Mb Metadata Space Used: 2.4 Mb Metadata Space Total: 2048.0 MbExecution Driver: native-0.2Kernel Version: 3.11.10-301.fc20.x86_64Debug mode (server): falseDebug mode (client): trueFds: 11Goroutines: 14EventsListeners: 0Init SHA1: 2c5adb59737b8a01fa3fb968519a43fe140bc9c9Init Path: /usr/libexec/docker/dockerinitSockets: [fd://] 使用说明: 这个命令在开发者报告Bug时会非常有用,结合docker vesion一起,可以随时使用这个命令把本地的配置信息提供出来,方便Docker的开发者快速定位问题。 version 使用方法: docker version 使用说明: 显示Docker的版本号,API版本号,Git commit, Docker客户端和后台进程的Go版本号。 2.2 系统运维相关attach 使用方法: docker attach [OPTIONS] CONTAINER 例子: $ ID=$(sudo docker run -d ubuntu /usr/bin/top -b)$ sudo docker attach $IDtop - 17:21:49 up 5:53, 0 users, load average: 0.63, 1.15, 0.78Tasks: 1 total, 1 running, 0 sleeping, 0 stopped, 0 zombie%Cpu(s): 1.0 us, 0.7 sy, 0.0 ni, 97.7 id, 0.7 wa, 0.0 hi, 0.0 si, 0.0 stKiB Mem: 2051644 total, 723700 used, 1327944 free, 33032 buffersKiB Swap: 0 total, 0 used, 0 free. 565836 cached Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 19748 1280 1008 R 0.0 0.1 0:00.04 top$ sudo docker stop $ID 使用说明: 使用这个命令可以挂载正在后台运行的容器,在开发应用的过程中运用这个命令可以随时观察容器內进程的运行状况。开发者在开发应用的场景中,这个命令是一个非常有用的命令。 build 使用方法:docker build [OPTIONS] PATH | URL | - 例子: $ docker build .Uploading context 18.829 MBUploading contextStep 0 : FROM busybox ---> 769b9341d937Step 1 : CMD echo Hello world ---> Using cache ---> 99cc1ad10469Successfully built 99cc1ad10469 使用说明: 这个命令是从源码构建新Image的命令。因为Image是分层的,最关键的Base Image是如何构建的是用户比较关心的,Docker官方文档给出了构建方法,请参考这里。 commit 使用方法:docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] 例子: $ sudo docker psID IMAGE COMMAND CREATED STATUS PORTSc3f279d17e0a ubuntu:12.04 /bin/bash 7 days ago Up 25 hours197387f1b436 ubuntu:12.04 /bin/bash 7 days ago Up 25 hours$ docker commit c3f279d17e0a SvenDowideit/testimage:version3f5283438590d$ docker images | headREPOSITORY TAG ID CREATED VIRTUAL SIZESvenDowideit/testimage version3 f5283438590d 16 seconds ago 335.7 MB 使用说明: 这个命令的用处在于把有修改的container提交成新的Image,然后导出此Imange分发给其他场景中调试使用。Docker官方的建议是,当你在调试完Image的问题后,应该写一个新的Dockerfile文件来维护此Image。commit命令仅是一个临时创建Imange的辅助命令。 cp 使用方法: cp CONTAINER:PATH HOSTPATH 使用说明: 使用cp可以把容器內的文件复制到Host主机上。这个命令在开发者开发应用的场景下,会需要把运行程序产生的结果复制出来的需求,在这个情况下就可以使用这个cp命令。 diff 使用方法:docker diff CONTAINER 例子: $ sudo docker diff 7bb0e258aefeC /devA /dev/kmsgC /etcA /etc/mtabA /goA /go/srcA /go/src/github.comA /go/src/github.com/dotcloud.... 使用说明: diff会列出3种容器内文件状态变化(A - Add, D - Delete, C - Change )的列表清单。构建Image的过程中需要的调试指令。 export 使用方法:docker export CONTAINER 例子: $ sudo docker export red_panda > latest.tar 使用说明: 把容器系统文件打包并导出来,方便分发给其他场景使用。 images 使用方法:docker images [OPTIONS] [NAME] 例子: $ sudo docker images | headREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE<none> <none> 77af4d6b9913 19 hours ago 1.089 GBcommittest latest b6fa739cedf5 19 hours ago 1.089 GB<none> <none> 78a85c484f71 19 hours ago 1.089 GB$ docker latest 30557a29d5ab 20 hours ago 1.089 GB<none> <none> 0124422dd9f9 20 hours ago 1.089 GB<none> <none> 18ad6fad3402 22 hours ago 1.082 GB<none> <none> f9f1e26352f0 23 hours ago 1.089 GBtryout latest 2629d1fa0b81 23 hours ago 131.5 MB<none> <none> 5ed6274db6ce 24 hours ago 1.089 GB 使用说明: Docker Image是多层结构的,默认只显示最顶层的Image。不显示的中间层默认是为了增加可复用性、减少磁盘使用空间,加快build构建的速度的功能,一般用户不需要关心这个细节。 import / save / load 使用方法: docker import URL|- [REPOSITORY[:TAG]]docker save IMAGEdocker load 使用说明: 这一组命令是系统运维里非常关键的命令。加载(两种方法: import, load),导出(一种方法: save)容器系统文件。 inspect 使用方法: docker inspect CONTAINER|IMAGE [CONTAINER|IMAGE...] 例子: $ sudo docker inspect --format='{{.NetworkSettings.IPAddress}}' $INSTANCE_ID 使用说明: 查看容器运行时详细信息的命令。了解一个Image或者Container的完整构建信息就可以通过这个命令实现。 kill 使用方法: docker kill [OPTIONS] CONTAINER [CONTAINER...] 使用说明: 杀掉容器的进程。 |