[Docker] 도커 기본 명령어

배창민·2025년 11월 28일
post-thumbnail

도커 기본 명령어 핵심 정리

도커를 쓸 때 자주 쓰는 기본 CLI 명령어를 한 번에 보기 좋게 정리.


1. 도커 명령어 기본 구조

도커 명령은 기본적으로 다음 형태를 따른다.

docker [명령어] [옵션] ...

예:

docker search ubuntu
docker image ls
docker container run -it --name ubuntu_test ubuntu

2. 도움말 확인 (help)

도커에서 명령어 사용법이 헷갈릴 때는 help 로 바로 확인할 수 있다.

2-1. 전체 도움말

docker help
  • 상위 명령어 목록과 간단 설명을 보여준다

2-2. 특정 명령어 도움말

docker [명령어] --help
# 예)
docker search --help
docker image ls --help
docker container run --help
  • 옵션, 사용 예시 등을 상세히 확인할 수 있다

3. 이미지 관련 명령어

Docker Hub 레지스트리에서 원하는 이미지를 검색하는 명령.

docker search [이미지이름]

# 예)
docker search ubuntu
  • OFFICIALOK 표시된 항목은 공식 이미지
  • 공식 이미지는 ubuntu 처럼 네임스페이스 없이 레포지토리 이름만 있는 경우가 많다
  • 그 외 xxxx/ubuntu 형태는 개인/조직이 올린 이미지

3-2. 이미지 다운로드 (docker image pull)

원격 레지스트리에서 이미지를 로컬로 가져오는 명령.

docker image pull [옵션] 레포지토리명[:태그]

# 예)
docker image pull ubuntu
docker image pull ubuntu:22.04
  • 태그를 생략하면 기본적으로 latest 태그를 사용 (ubuntu:latest)

3-3. 이미지 목록 보기 (docker image ls)

현재 로컬에 저장된 이미지 목록을 확인.

docker image ls
  • REPOSITORY, TAG, IMAGE ID, CREATED, SIZE 등의 정보를 볼 수 있다
  • 정리할 때 어떤 이미지가 많이 쌓였는지 확인할 때 자주 쓰는 명령

4. 컨테이너 관련 명령어

4-1. 컨테이너 실행 (docker container run)

이미지로부터 새로운 컨테이너를 생성하면서 바로 실행.

docker container run [옵션] 이미지명[:태그]

# 예)
docker container run -d --name ubuntu_test ubuntu
docker container run -it --name ubuntu_test2 ubuntu

자주 쓰는 옵션 정리:

옵션설명
-d백그라운드(detached) 모드로 실행
-p호스트포트:컨테이너포트 형식으로 포트 매핑
-t터미널(TTY) 활성화. 보통 -i 와 함께 -it 로 사용
-i표준 입력을 컨테이너와 연결. 셸로 들어갈 때 사용
--rm컨테이너가 종료될 때 자동으로 컨테이너 삭제
--name컨테이너에 이름 부여. 이후 관리할 때 편리

예) 셸로 바로 접속 가능한 우분투 컨테이너 실행:

docker container run -it --name ubuntu_test2 ubuntu

컨테이너 내부 셸에서 나갈 때
exit 또는 Ctrl + D 를 사용하면 컨테이너가 종료됨
컨테이너는 살려두고 셸만 빠져나오고 싶으면 Ctrl + P, Q


4-2. 실행 중인 컨테이너 목록 (docker container ls)

현재 실행 중인 컨테이너 확인:

docker container ls

추가 옵션:

옵션설명
-a종료된 컨테이너까지 모두 보기
-f필터 조건으로 목록 제한 (--filter 줄임말)
-n최근 n개 컨테이너만 표시 (docker container ls -n 3)
-l가장 최근에 생성된 컨테이너만 표시
-q컨테이너 ID만 출력 (스크립트에서 자주 사용)
-s컨테이너의 파일 시스템 사용량까지 표시

예:

docker container ls -a
docker container ls -f "name=ubuntu"
docker container ls -q

4-3. 실행 중인 컨테이너로 들어가기 (docker container attach)

이미 실행 중인 컨테이너의 터미널에 붙어 들어갈 때 사용.

docker container attach [컨테이너명 또는 ID]

# 예)
docker container attach ubuntu_test2
  • 컨테이너가 -it 모드로 실행돼 있어야 터미널 접속이 자연스럽다
  • exit 하면 컨테이너도 같이 종료되므로 주의

4-4. 컨테이너 정지 (docker container stop)

실행 중인 컨테이너를 종료.

docker container stop [컨테이너명 | 컨테이너ID]

# 예)
docker container stop ubuntu_test2
  • 내부 프로세스에 SIGTERM 을 보내고, 일정 시간 후 SIGKILL 로 종료

4-5. 정지된 컨테이너 시작 (docker container start)

이미 만들어진 컨테이너를 다시 실행.

docker container start [컨테이너명 | 컨테이너ID]

# 예)
docker container start 4b
  • 컨테이너 ID는 전체를 다 적지 않고 앞부분만 적어도 유일하게 식별되면 동작

4-6. 컨테이너 재시작 (docker container restart)

한 번에 종료 후 다시 시작.

docker container restart [컨테이너명 | 컨테이너ID]

# 예)
docker container restart ubuntu_test2

4-7. 컨테이너 삭제 (docker container rm)

사용하지 않는 컨테이너 제거.

docker container rm [컨테이너명 | 컨테이너ID]

# 예)
docker container rm ubuntu_test
docker container rm ubuntu_test2

기본 규칙:

  • 기본 옵션으로는 정지된 컨테이너만 삭제 가능
  • 실행 중인 컨테이너를 삭제하려면 -f 옵션 사용
# 실행 중인 컨테이너 강제 종료 후 삭제
docker container rm -f ubuntu_test2

실행 중인 컨테이너 삭제 방법 정리:

  1. 컨테이너를 만들 때 --rm 옵션 사용 → 종료 시 자동 삭제
  2. docker container stop 으로 먼저 종료 후 docker container rm
  3. docker container rm -f 로 강제 종료 + 삭제

5. 축약 명령어

도커는 이미지/컨테이너 명령어에 대해 짧은 축약형도 제공한다.

full 명령어축약 명령어
docker image pulldocker pull
docker image lsdocker images
docker container rundocker run
docker container startdocker start
docker container lsdocker ps
docker container stopdocker stop

실무에서는 축약 명령어를 훨씬 더 자주 쓰게 된다.


6. 운용 관련 명령어

6-1. 컨테이너/이미지 등 한 번에 정리하기

도커 작업을 반복하다 보면 사용하지 않는 컨테이너, 이미지가 계속 쌓인다.
이때 정리용으로 쓰는 명령이 prune 계열.

6-1-1. 정지된 컨테이너 일괄 삭제 (docker container prune)

docker container prune
  • 현재 실행 중이 아닌 모든 컨테이너를 한 번에 삭제

6-1-2. 사용하지 않는 이미지 삭제 (docker image prune)

docker image prune
  • 기본적으로 dangling 이미지(태그가 없는 이미지) 를 삭제
  • 옵션에 따라 더 과감하게 삭제할 수도 있다

6-1-3. 시스템 리소스 전체 정리 (docker system prune)

docker system prune
  • 사용하지 않는 컨테이너, 이미지(태그 없는 이미지), 네트워크 등을 한 번에 정리
  • 옵션을 더 주면 볼륨까지 포함해서 대청소 가능 (docker system prune -a 등)

7. 컨테이너 리소스 사용량 확인 (docker container stats)

실행 중인 컨테이너의 CPU, 메모리, 네트워크, I/O 사용량을 실시간으로 보고 싶을 때 사용.

# 컨테이너 실행
docker container run -it --name ubuntu_test3 ubuntu

# 셸만 빠져나오기
Ctrl + P, Q

# 리소스 사용량 확인
docker container stats ubuntu_test3
  • Ctrl + C 로 stats 화면 종료
  • 여러 컨테이너를 동시에 모니터링할 수도 있다

마무리 정리

자주 쓰게 되는 흐름만 다시 정리하면:

  1. 이미지 검색: docker search ubuntu
  2. 이미지 다운로드: docker image pull ubuntu
  3. 컨테이너 실행: docker container run -it --name ubuntu_test ubuntu
  4. 컨테이너 목록 확인: docker container ls -a
  5. 컨테이너 정지/시작: docker container stop / start / restart
  6. 컨테이너/이미지 삭제: docker container rm, docker image rmi, prune 계열
profile
개발자 희망자

0개의 댓글