Docker命令解读-六

title: Docker命令解读(六)
date: 2015-11-24 15:57:02
tags: docker

categories: Docker Commands

Docker命令解读系列文章将系统讲解Docker使用的命令,方便大家学习Docker的基本操作。在写这个系列文章的时候,主要参考了Docker官方的文档,有些内容是直接的翻译。原文档地址 Docker Docs
转载请注明出处

本篇文章涉及的命令都与容器相关,主要有下面几个命令:
- create
- rm
- start
- stop
- restart
- pause
- unpause
- rename

create

create命令用于创建一个容器,但与run里面不同的是并不运行它,在你需要的时候,可以通过docker start <container_id>命令运行一个状态为created的容器。

Usage: docker create [OPTIONS] IMAGE [COMMAND] [ARG...]

Create a new container

更多关于docker create命令的参数可以运行docker create --help查看。
举例:

$ docker create -t -i fedora bash
6d8af538ec541dd581ebc2a24153a28329acb5268abe5ef868c1f1a261221752
$ docker start -a -i 6d8af538ec5
bash-4.2#

特别的,你可以使用docker create命令并指定-v标识创建一个数据容器,然后在其他的容器中使用这个数据容器。例如:

$ docker create -v /data --name data ubuntu
240633dfbb98128fa77473d3d9018f6123b99c454b3251427ae190a7d951ad57
$ docker run --rm --volumes-from data ubuntu ls -la /data
total 8
drwxr-xr-x  2 root root 4096 Dec  5 04:10 .
drwxr-xr-x 48 root root 4096 Dec  5 04:11 ..

rm

Usage: docker rm [OPTIONS] CONTAINER [CONTAINER...]

Remove one or more containers

  -f, --force=false      Force the removal of a running container (uses SIGKILL)
  --help=false           Print usage
  -l, --link=false       Remove the specified link
  -v, --volumes=false    Remove the volumes associated with the container

docker rm命令用于删除一个不需要的容器,格式为:

docker rm <container_id>|<container_name>

需要注意的是,被删除的容器的状态必须是停止的,不能删除正在运行的容器。如果确实需要删除,可以先执行docker stop停止后在删除,或者指定-f(--force)标识强制删除运行中的容器(通过发送SIGKILL信号实现)。
docker rm命令可以同时指定多个容器,或者使用下面的命令删除所有停止的容器:

docker rm $(docker ps -a -q)

使用上面的命令不会删除正在运行容器。
使用--link标识可以删除两个容器之间通过--link建立的连接,如:

docker rm --link /webapp/redis

这条命令会删除webapp容器和redis容器之间的所有网络连接。
如果想省去每次删除不需要容器的麻烦,可以在docker run中指定--rm标识,这样容器停止后会自动删除。这在测试中会很有用。

start

docker start命令上面我们已经提到过,它用来使一个处在停止状态的容器运行起来。

Usage: docker start [OPTIONS] CONTAINER [CONTAINER...]

Start one or more containers

  -a, --attach=false         Attach STDOUT/STDERR and forward signals
  --help=false               Print usage
  -i, --interactive=false    Attach container's STDIN

其中-a标识用于将要运行容器的STDOUTSTDERR绑定到控制台输出;而-i标识用于将STDIN绑定到控制台用于和容器交互。

stop

stop命令用于停止一个正在运行的容器。

Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...]

Stop a container by sending SIGTERM and then SIGKILL after a
grace period

  --help=false       Print usage
  -t, --time=10      Seconds to wait for stop before killing it

停止容器的过程中,容器首先收到SIGTERM信号表示要停止容器,在经过一个“宽限期”后,容器收到SIGKILL信号强制停止容器。其中“宽限期”由-t(--time)标识指定,单位是秒。

restart

restart命令用于重新启动一个正在运行的容器,它同样可以使用-t标识设定“宽限期”,具体用法如下:

Usage: docker restart [OPTIONS] CONTAINER [CONTAINER...]

Restart a container

  --help=false       Print usage
  -t, --time=10      Seconds to wait for stop before killing the container

pause

Usage: docker pause [OPTIONS] CONTAINER [CONTAINER...]

Pause all processes within a container

  --help=false    Print usage

使用这个命令暂停容器内所有的进程。

unpause

Usage:  docker unpause [OPTIONS] CONTAINER [CONTAINER...]

Unpause all processes within a container

  --help=false       Print usage

pause对应,恢复容器内所有的进程。

rename

Usage: docker rename [OPTIONS] OLD_NAME NEW_NAME

Rename a container

  --help=false    Print usage

docker rename命令用于对一个容器进行重命名。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值