docker exec :在运行的容器中执行命令

语法

bash
  1. docker exec [OPTIONS] CONTAINER COMMAND [ARG…]

OPTIONS说明:

  • -d :分离模式: 在后台运行
  • -i :即使没有附加也保持STDIN 打开
  • -t :分配一个伪终端

    实例

    在容器 mynginx 中以交互模式执行容器内 /root/test.sh 脚本:
  1. test@test:~$ docker exec -it mynginx /bin/sh /root/test.sh
  2. http://www.runoob.com/

在容器 mynginx 中开启一个交互模式的终端:

  1. test@test:~$ docker exec -i -t mynginx /bin/bash
  2. root@b1a0703e41e7:/#

也可以通过 docker ps -a 命令查看已经在运行的容器,然后使用容器 ID 进入容器。
查看已经在运行的容器 ID:

  1. docker ps -a

  2. 9df70f9a0714 openjdk “/usercode/script.sh…”

第一列的 9df70f9a0714 就是容器 ID。

通过 exec 命令对指定的容器执行 bash:

  1. docker exec -it 9df70f9a0714 /bin/bash