Docker
[Docker] 컨테이너 조회, 컨테이너 중지, 컨테이너 삭제, 컨테이너 로그 조회, 실행 중인 컨테이너에 접속하기
mejii
2025. 6. 10. 14:16
⭐️ 컨테이너 조회
$ docker ps
✔️ 모든 컨테이너 조회(작동하고 있는 컨테이너와 작동을 멈춘 컨테이너 모두 조회)
$ docker ps -a
⭐️ 컨테이너 중지
$ docker stop 컨테이너명[또는 컨테이너 ID]
$ docker kill 컨테이너명[또는 컨테이너 ID]
둘의 차이를 비유를 통해 알아보자.
- docker stop : 시스템 종료 버튼을 통해 정상적으로 종료하기
- docker kill : 본체 버튼을 눌러 무식하게 종료하기
⭐️ 컨테이너 삭제
$ docker rm 컨테이너명[또는 컨테이너 ID]
중지되어 있는 컨테이너만 삭제 가능하다. 실행되고 있는 컨테이너는 아래의 명령어로 삭제할 수 있다.
$ docker rm -f 컨테이너명[또는 컨테이너 ID]
✔️ 중지되어 있는 모든 컨테이너 삭제, 실행되고 있는 모든 컨테이너 삭제
$ docker rm $(docker ps -qa) # 중지된 모든 컨테이너 삭제
$ docker rm -f $(docker ps -qa) # 실행중인 모든 컨테이너 삭제
⭐️ 컨테이너 로그 조회
컨테이너를 실행시키고나서 실행시킨 컨테이너가 잘 실행되고 있는지, 에러가 발생한 건 아닌지는 로그를 보면 알 수 있다!
디버깅할 때 필수로 확인해야 하는 것이 로그이다. 컨테이너의 로그를 조회해보자.
$ docker logs [로그를 확인하고 싶은 실행 중인 컨테이너 ID or 컨테이너명]
✔️ 최근 로그 10줄만 조회
# dokcer logs --tail [로그 끝부터 표시할 줄 수] [컨테이너 ID 또는 컨테이너명]
$ dokcer logs --tail 10 [컨테이너 ID 또는 컨테이너명]
✔️ 기존 로그 조회 + 생성되는 로그를 실시간으로 보기
# docker logs -f [컨테이너 ID 또는 컨테이너명]
# Nginx의 컨테이너에 실시간으로 쌓이는 로그 확인하기
$ docker run -d -p 80:80 nginx
$ docker logs -f
-f : follow의 약어
✔️ 기존 로그 조회 X + 생성되는 로그 실시간으로 보기
$ docker logs --tail 0 -f [컨테이너 ID 또는 컨테이너명]
⭐️ 실행 중인 컨테이너 내부에 접속하기
$ docker run -d nginx
$ docker exec -it [Nginx가 실행되고 있는 컨테이너 ID] bash
bash : 쉘의 일종
-it : -it 옵션을 사용해야 명령어를 입력하고 결과를 확인할 수 있다. -it 옵션을 적지 않으면 명령어를 1번만 실행시키고 종료되어 버린다.
-it 옵션을 적어야 계속해서 명령어를 입력할 수 있다.