插件窝 干货文章 linux如何进入docker

linux如何进入docker

容器 Docker bash 使用 949    来源:    2025-04-29

如何进入 Docker 容器

在 Linux 系统中,有几种方法可以进入正在运行的 Docker 容器。以下是常用的几种方式:

1. 使用 docker exec 命令(推荐方式)

docker exec -it <容器ID或名称> /bin/bash

或者使用其他 shell(如 sh):

docker exec -it <容器ID或名称> /bin/sh

参数说明: - -i:保持 STDIN 打开 - -t:分配一个伪终端 - /bin/bash/bin/sh:指定要运行的 shell

2. 使用 docker attach 命令

docker attach <容器ID或名称>

注意:这种方式会连接到容器的主进程,如果主进程退出,容器也会停止。

3. 使用 nsenter 命令(更底层的方式)

PID=$(docker inspect --format {{.State.Pid}} <容器ID或名称>)
nsenter --target $PID --mount --uts --ipc --net --pid

4. 使用 SSH(不推荐)

如果容器内运行了 SSH 服务,也可以通过 SSH 连接:

ssh root@<容器IP> -p <SSH端口>

实用技巧

  1. 查看运行中的容器

    docker ps
    
  2. 退出容器而不停止容器

    • 对于 docker exec:使用 exitCtrl+D
    • 对于 docker attach:使用 Ctrl+P 然后 Ctrl+Q 分离而不停止容器
  3. 如果容器没有 bash/sh

    docker exec -it <容器ID> /bin/ash  # 对于 Alpine Linux
    
  4. 创建新容器并立即进入

    docker run -it <镜像名称> /bin/bash
    

选择哪种方式取决于你的具体需求,docker exec 是最常用且推荐的方法。