Docker 특정 Container의 Shell 진입방법
Docker에서 원하는 Container의 Shell에 진입하는 방법에 대해 다룹니다.
Dockershell쉘터미널도커
회사에서 여러 프레임워크가 유기적으로 연결되어있는 도커 컨테이너를 개발하는 도중 mariaDB 리셋이 필요하여 mariaDB 쉘에 접근하는 방법을 알게 되었고 이를 정리한 글입니다."
현재 실행중인 컨테이너 확인
우선 특정 컨테이너의 쉘에 진입하려면 해당 쉘의 CONTAINER ID
를 알아야합니다.
docker ps -a
해당 명령을 터미널에서 실행하면 여러 이미지의 실행 정보가 다음과 같이 나오게 되는데

여기서 가장 우측에 위치한 CONTAINER ID
가 컨테이너를 특정하기 위한 값이고 바로 우측의 IMAGE
가 해당 컨테이너가 어떤 컨테이너인지 식별할 수 있는 정보입니다.
컨테이너를 선택하고 특정 명령을 실행하기
아래 명령어를 사용하면 원하는 CONTAINER ID
의 쉘을 실행할 수 있습니다.
docker exec -it <CONTAINER ID> /bin/bash
저의 경우 CONTAINER ID
가 fd0d910871ab
인 mariadb:10.11의 /bin/bash
를 실행한다고 가정하겠습니다.

잘 접속된것을 확인할 수 있습니다.
첨언하자면 docker exec -it
는 해당 컨테이너에서 무언가를 실행한다는 의미이고 /bin/bash
가 리눅스 쉘이기때문에 쉘을 실행한다는 구문으로 해석할 수 있습니다.