docker1.12--docker命令行帮助文档

镜像操作

build

使用dockerfile方式创建镜像

使用dockerfile文件docker build dockerflle/,dockerfile文件默认位于dockerflle/Dockerfile

可以在这里设置cgroup

commit

通过容器创建本地镜像。注意:如果要push到docker hub中,注意生成镜像的命名。

docker commit 容器id 镜像名

docker commit 536f0efeeef3 centostttt

export

将容器的文件系统打包成tar文件

有两种方式:

docker export -o mysqldb1.tarmysqldb

docker export mysqldb >mysqldb.tar

history

显示镜像制作的过程,相当于dockfile

docker history centostttt

IMAGE               CREATED             CREATED BY                                      SIZE                COMMENT
f2bb8fe139f0        46 minutes ago      /bin/bash                                       1.671MB           
8da04c5a9351        56 minutes ago      /bin/sh -c #(nop)  ENV PWD=/root/               0 B                
77d730816eed        56 minutes ago      /bin/sh -c #(nop)  ENV PATH=/usr/local/sbin:/   0 B                
3bee3060bfc8        13 days ago         /bin/sh -c #(nop)  CMD ["/bin/bash"]            0 B                
<missing>           13 days ago         /bin/sh -c #(nop)  LABEL name=CentOS Base Ima   0 B                
<missing>           13 days ago         /bin/sh -c #(nop) ADDfile:d22a9c627d1d1f32a8   192.5 MB  

images

列出本机的所有镜像

import

根据tar文件的内容新建一个镜像,与之前的export命令相对应

docker import mysqldb.tar mysql:v1

eb81de183cd94fd6f0231de4ff29969db822afd3a25841d2dc9cf3562d135a10

load

与save命令相对应,将sava命令打包的镜像通过load命令导入

pull

从docker hub中下载镜像

push

将本地的镜像上传到docker hub中

前提是要先用docker login登录上,不然会报错误

rmi

删除镜像

save

将镜像打包,与上面的load命令相对应

docker save -o nginx.tar nginx

search

从Docker Hub中搜索镜像

tag

对镜像进行重命名

容器生命周期

attach

将终端依附到容器上

docker attachb7a7c4bef5a5

create

创建一个容器。注意,此时,容器的status只是Created

可以在这里设置cgroup【CPU、内存、IO等等】、Capability、namespace、volume等等

docker create -c 2(最少2) --cpuset-cpus 0,2 -m 32m --memory-swap 0-w /root/(更换目录) --blkio-weight 10 --dns 114.114.114.114--name nginx8(容器名称) -p 宿主机端口:容器端口 -v 宿主机目录:容器目录--cpu-period 1000 --expose 22 --shm-size 32m -ti centos6:nginx

exec

用于容器启动后,执行其它的任务。

通过exec命令可以创建两种任务:后台型任务和交互型任务

后台型任务:

docker exec -d cc touch 123 其中cc是容器名

交互型任务:

docker exec -i -t cc /bin/bash

ls

123bin boot devetc home liblib64 media mntopt proc rootrun sbin srvsys tmp usrvar

inspect

用于查看容器的配置信息,包含容器名、环境变量、运行命令、主机配置、网络配置和数据卷配置等

docker inspect 容器ID或者容器ID列表

返回一个列表(包含字典)

kill

强制终止容器。

参数-s或--signal string:Signal to send to thecontainer (default "KILL")

logs

用于查看容器的日志,它将输出到标准输出的数据作为日志输出到docker logs命令的终端上。常用于后台型容器

pause

暂停容器内的所有进程,此时,通过dockerstats可以观察到此时的资源使用情况是固定不变的,通过docker logs -f也观察不到日志的进一步输出。

port

查看容器端口与宿主机端口的映射情况

docker port blog

80/tcp -> 0.0.0.0:80

容器blog的内部端口80映射到宿主机的80端口,这样可通过宿主机的80端口查看容器blog提供的服务

ps

列出所有容器,其中dockerps用于查看正在运行的容器,ps -a则用于查看所有容器。

rename

更改容器的名字

restart

重启容器

rm

删除容器,注意,删除一个运行中的容器,必须加-f参数

如果要一次性删除所有容器,可使用docker rm -f `docker ps -a -q`,其中,-q指的是只列出容器的ID

run

让创建的容器立刻进入运行状态,该命令等同于docker create创建容器后再使用docker start启动容器

可以在这里设置cgroup【CPU、内存、IO等等】、Capability、namespace、volume等等

start

启动容器

stats

动态显示容器的资源消耗情况,包括:CPU、内存、网络I/O

stop

停止一个运行的容器

top

查看容器中正在运行的进程

unpause

恢复容器内暂停的进程,与pause参数相对应

wait

捕捉容器停止时的退出码

执行此命令后,该命令会“hang”在当前终端,直到容器停止,此时,会打印出容器的退出码。

update

Updateconfiguration of one or more containers

升级一个或者多个容器配置,主要是cgroup

容器文件系统

cp

在容器和本地文件系统上拷贝文件【夹】

docker cp [OPTIONS]CONTAINER:SRC_PATH DEST_PATH|-

dockercp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

docker cp tta49d7ca21839:/root/

docker cpa49d7ca21839:/root/test/ ./

diff

对比容器的文件变化情况

dockerdiff a49d7ca21839

volume

Manage Dockervolumes

其他

events

实时或者指定时间戳输出Docker服务器端的事件,包括容器的创建,启动,关闭等。

info

查看docker的系统信息

login

登录到自己的Dockerregister,需有Docker Hub的注册账号

docker login

Username: ivictor

Password:

Email: xxxx@foxmail.com

WARNING: login credentials saved in /root/.docker/config.json

Login Succeeded

logout

退出登录

docker logout

Remove logincredentials for https://index.docker.io/v1/

version

查看docker的版本

network

Manage Dockernetworks

docker网络管理

node

Manage DockerSwarm nodes

service

Manage Docker services

swarm

Manage DockerSwarm

区别

stop和kill、wait

当用docker stop命令来停掉容器时,docker默认会允许容器中的应用程序有10秒的时间用以终止运行。在docker stop命令执行时,会先向容器中PID为1的进程(main process)发送系统信号SIGTERM,然后等待容器中的应用程序终止执行,如果等待时间达到设定的超时时间,或者默认10秒,会发送SIGKILL的系统信号强行kill掉进程。在容器中的应用程序,可以选择忽略和不处理SIGTERM信号,不过一旦达到超时时间,程序就会被系统强行kill掉,因为SIGKILL信号是直接发往系统内核的,应用程序没有机会去处理它。

默认情况下,dockerkill命令不会给容器中的应用程序有任何gracefully shutdown的机会。它会直接发出SIGKILL的系统信号,以强行终止容器中程序的运行。

docker wait捕捉容器停止时的退出码。执行此命令后,该命令会“hang”在当前终端,直到容器停止,此时,会打印出容器的退出码。

run和create、start

create只是创建容器,没有启动。可以配置cgroup

start是启动容器

run是创建并启动容器,run=create+start。可以配置cgroup

exec和attach

exec

在启动的容器上执行命令,可以分为后台和交互式。

交互式执行类似attach,但退出之后不会结束容器。

attach

在容器上附属一个终端,退出之后可能会结束容器(容器启动命令为/etc/bash)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值