>  기사  >  운영 및 유지보수  >  이전 도커에 진입하는 방법

이전 도커에 진입하는 방법

PHPz
PHPz원래의
2023-04-10 14:17:26981검색

Docker의 인기와 광범위한 사용으로 인해 많은 개발자가 애플리케이션 배포 및 유지 관리에 이 컨테이너화 기술을 사용할 것입니다. 그러나 일부 사람들은 이전 Docker 컨테이너에 들어가는 데 문제가 있을 수 있습니다. 그렇다면 이전 Docker에 어떻게 들어가나요?

이 글에서는 기존 Docker 컨테이너에 진입하는 방법을 소개하겠습니다. Docker Attach 명령을 사용하는 방법과 nsenter 도구를 사용하는 두 가지 방법을 각각 소개하겠습니다.

1부: Docker 연결 명령 사용

Docker 연결 명령은 Docker 명령줄 도구를 사용하여 컨테이너에 들어가는 방법입니다. 콘솔에서와 마찬가지로 컨테이너 내부에서 대화형 모드로 명령을 실행할 수 있습니다. 다음은 Docker Attach 명령을 사용하여 컨테이너에 들어가는 단계입니다.

1단계: 컨테이너 ID 또는 이름 알기

Docker Attach 명령을 사용하기 전에 입력할 Docker 컨테이너의 ID 또는 이름을 알아야 합니다. . 다음 명령을 사용하여 컨테이너 ID 또는 이름을 가져올 수 있습니다.

docker ps -a

이 명령은 이름, ID, 상태 및 기타 정보를 포함하여 모든 Docker 컨테이너 목록을 표시합니다. 입력하려는 컨테이너를 찾아 해당 컨테이너의 ID나 이름을 복사하세요.

2단계: Docker 연결 명령 실행

다음 명령을 사용하여 실행 중인 Docker 컨테이너를 입력하세요.

docker attach container-id

여기서 container-id는 이전 단계에서 얻은 컨테이너 ID 또는 이름입니다. 이 명령을 실행하면 컨테이너 내부에 있게 되며 컨테이너 내에서 대화형 명령을 실행할 수 있습니다. container-id是上一步中获取到的容器ID或者名称。运行此命令后,您将进入该容器,并可以在其中运行交互式命令。

请注意,Docker attach命令可能不适用于所有类型的容器。如果容器是在后台运行的,您将无法使用该命令进入它。

Part 2: 使用nsenter工具

如果您想在之前退出的Docker容器中运行命令,则可以使用nsenter工具。nsenter是Linux系统的一个工具,可以让您进入隔离的命名空间。下面是使用nsenter工具进入容器的步骤:

Step 1: 安装nsenter工具

在使用nsenter工具之前,我们需要先安装它。您可以使用以下 curl 命令来安装nsenter工具:

curl -o /tmp/nsenter https://raw.githubusercontent.com/jpetazzo/nsenter/master/nsenter && chmod +x /tmp/nsenter

这个命令将从GitHub上下载nsenter脚本,并将其保存到/tmp/nsenter文件中,并将其添加到系统环境变量中。

Step 2: 运行nsenter命令

使用以下命令可以进入之前退出的Docker容器:

docker inspect --format '{{.State.Pid}}' container-id > /tmp/container-pid
sudo /tmp/nsenter --target $(cat /tmp/container-pid) --mount --uts --ipc --net --pid

在这里,container-id

Docker 연결 명령은 모든 유형의 컨테이너에서 작동하지 않을 수 있습니다. 컨테이너가 백그라운드에서 실행 중인 경우 이 명령을 사용하여 컨테이너에 들어갈 수 없습니다.

2부: nsenter 도구 사용

이전에 종료한 Docker 컨테이너에서 명령을 실행하려면 nsenter 도구를 사용할 수 있습니다. nsenter는 격리된 네임스페이스를 입력할 수 있는 Linux 시스템용 도구입니다. 다음은 nsenter 도구를 사용하여 컨테이너에 들어가는 단계입니다.

1단계: nsenter 도구 설치 🎜🎜nsenter 도구를 사용하기 전에 먼저 설치해야 합니다. 다음 컬 명령을 사용하여 nsenter 도구를 설치할 수 있습니다. 🎜rrreee🎜 이 명령은 GitHub에서 nsenter 스크립트를 다운로드하여 /tmp/nsenter 파일에 저장하고 시스템 환경 변수에 추가합니다. 🎜🎜2단계: nsenter 명령 실행🎜🎜다음 명령을 사용하여 이전에 종료한 Docker 컨테이너를 입력하세요. 🎜rrreee🎜여기에서 container-id는 입력하려는 컨테이너의 ID 또는 이름입니다. . 이 명령을 실행하면 컨테이너 내부에 있게 되며 컨테이너 내에서 명령을 실행할 수 있습니다. 🎜🎜nsenter 도구는 슈퍼유저 루트 권한으로 실행해야 한다는 점에 유의하세요. 🎜🎜Summary🎜🎜이 기사에서는 이전 Docker 컨테이너에 들어가는 두 가지 방법을 소개했습니다. Docker Attach 명령을 사용하여 실행 중인 컨테이너에 직접 들어가거나 nsenter 도구를 사용하여 중지된 컨테이너에 들어갈 수 있습니다. 어떤 방법을 선택하든 Docker 컨테이너 사용이 더 쉬워지고 애플리케이션 배포 및 유지 관리가 더 편리해집니다. 🎜

위 내용은 이전 도커에 진입하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.