📜  docekr 进入容器 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:40:48.662000             🧑  作者: Mango

进入 Docker 容器 Shell-Bash

在 Docker 中,可以使用 docker exec 命令进入一个已经运行的容器中的 Shell-Bash 环境,来执行一些命令操作。

命令格式
docker exec -it <container_name> /bin/bash

其中,参数解释如下:

  • docker exec: 命令用于在运行的容器中执行命令。
  • -it: 分别为交互式执行和分配一个伪终端,即进入容器的 Shell-Bash 环境。
  • <container_name>: 目标容器的名称或容器 ID。
  • /bin/bash: 执行的命令,这里是进入 Shell-Bash 环境。
示例

我们以在 Docker 中运行的 Ubuntu 16.04 容器 my-ubuntu 为例:

docker run -d --name my-ubuntu ubuntu:16.04 tail -f /dev/null

在容器中执行 ifconfig 命令会发现找不到命令:

docker exec my-ubuntu ifconfig

但是,如果进入容器的 Shell-Bash 环境,则可以执行 ifconfig 命令:

docker exec -it my-ubuntu /bin/bash
ifconfig
exit

其中,exit 命令用于退出容器的 Shell-Bash 环境。

注意事项
  • 可以多次使用 docker exec 命令进入容器中的 Shell-Bash 环境。
  • 进入容器中的 Shell-Bash 环境后,如果修改了容器的状态或文件,不要忘记退出并保存修改。可以运行 docker commit 命令,将容器的状态保存为一个新的镜像。
  • 进入容器的 Shell-Bash 环境时,需要输入容器内已安装的命令的完整路径。例如,ifconfig 在 Ubuntu 中安装在 /sbin/ifconfig 路径下,因此在进入容器的 Shell-Bash 环境中使用 ifconfig 命令时,应输入 /sbin/ifconfig