牛下载:绿色软件官方软件免费下载基地!
所在位置:首页 > 新闻资讯 > Docker命令行参考(18) – docker exec在运行中的容器执行一个命令

Docker命令行参考(18) – docker exec在运行中的容器执行一个命令

发布时间:2020-06-02 22:25:24来源:阅读:

Usage:  docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
 
Run a command in a running container
 
  -d, --detach         Detached mode: run command in the background
  --detach-keys        Override the key sequence for detaching a container
  --help               Print usage
  -i, --interactive    Keep STDIN open even if not attached
  --privileged         Give extended privileges to the command
  -t, --tty            Allocate a pseudo-TTY
  -u, --user           Username or UID (format: <name|uid>[:<group|gid>])

docker exec命令在一个运行中的容器执行一个新命令。
当容器的主进程(PID 1)正在运行时,使用docker exec命令执行的命令才执行,并且当容器重启时,此命令不会重启。
如果容器暂停,那么docker exec命令将遇到一个错误:

$ docker pause test
test
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                   PORTS               NAMES
1ae3b36715d2        ubuntu:latest       "bash"              17 seconds ago      Up 16 seconds (Paused)                       test
$ docker exec test ls
FATA[0000] Error response from daemon: Container test is paused, unpause the container before exec
$ echo $?
1

示例

$ docker run --name ubuntu_bash --rm -i -t ubuntu bash

这将创建一个名为ubuntu_bash的容器并启动一个Bash会话。

$ docker exec -d ubuntu_bash touch /tmp/execWorks

这会在后台在运行中的容器内创建一个新的文件/tmp/execWorks。

$ docker exec -it ubuntu_bash bash

这会在容器ubuntu_bash中创建一个新的Bash会话。

反对
收藏
  • 热门资讯
  • 最新资讯
  • 应用排行榜
  • 游戏排行榜