DevSecOps/Containerization(k8s)

도커(Docker) 필수 명령어 정리

봉의일상 2025. 2. 7. 00:04

도커(Docker)는 컨테이너 기반 가상화 기술로, 개발 환경을 구축하고 애플리케이션을 배포하는 데 필수적인 도구입니다. 도커를 사용하려면 여러 가지 명령어를 익혀야 하며, 특히 이미지 관리, 컨테이너 실행, 빌드 및 시스템 관리 관련 명령어는 실무에서 자주 사용됩니다.

이 글에서는 도커를 사용할 때 반드시 알아야 할 주요 명령어들을 정리하고, docker run 명령어의 다양한 옵션까지 함께 살펴보겠습니다.

1. 이미지 관련 명령어

도커의 이미지는 컨테이너를 실행하는 데 필요한 모든 요소(코드, 런타임, 라이브러리 등)를 포함하고 있습니다.

  • 이미지 목록 확인:
    docker images
    docker image ls
  • 이미지 검색:
    docker search <이미지 이름>
  • 이미지 다운로드(Pull):
    docker pull <이미지명:태그>
  • 이미지 삭제:
    docker rmi <이미지 ID 또는 이름>
  • 사용하지 않는 이미지 정리:
    docker image prune

2. 컨테이너 관련 명령어

도커 컨테이너는 실행 중인 애플리케이션의 인스턴스입니다. 컨테이너를 생성, 실행, 중지하는 명령어들을 살펴봅니다.

  • 컨테이너 생성 및 실행:
    docker run <옵션> <이미지명>
  • 실행 중인 컨테이너 목록 확인:
    docker ps
  • 모든 컨테이너 목록(중지된 컨테이너 포함) 확인:
    docker ps -a
  • 컨테이너 중지:
    docker stop <컨테이너 ID>
  • 컨테이너 시작:
    docker start <컨테이너 ID>
  • 컨테이너 재시작:
    docker restart <컨테이너 ID>
  • 컨테이너 삭제:
    docker rm <컨테이너 ID>

3. docker run의 주요 옵션 정리

docker run 명령어는 컨테이너를 실행할 때 사용하는 가장 중요한 명령어 중 하나입니다. 다양한 옵션을 활용하면 컨테이너 실행 방식을 세밀하게 제어할 수 있습니다.

 

-d 백그라운드에서 컨테이너 실행 (detached mode)
--name <이름> 컨테이너에 사용자 정의 이름 지정
-p <호스트 포트>:<컨테이너 포트> 컨테이너의 포트를 호스트에 바인딩
-v <호스트 디렉터리>:<컨테이너 디렉터리> 볼륨을 마운트하여 데이터 유지
--rm 컨테이너 종료 시 자동 삭제
-e <환경변수>=<값> 컨테이너 내부에서 사용할 환경변수 설정
--network <네트워크명> 특정 네트워크에 컨테이너 연결
--memory <메모리 크기> 컨테이너의 메모리 사용량 제한
--cpus <CPU 개수> 컨테이너의 CPU 사용량 제한

4. 빌드 및 기타 명령어

  • Dockerfile을 사용해 이미지 빌드:
    docker build -t <이미지명:태그> <Dockerfile 경로>
  • 컨테이너를 이미지로 저장:
    docker commit <컨테이너 이름> <새 이미지명>
  • 도커 버전 확인:
    docker version
  • 도커 시스템 정보 확인:
    docker info

마무리

위에서 정리한 명령어들은 도커를 사용할 때 가장 기본적이면서도 필수적인 기능들입니다. 컨테이너 환경을 더욱 효율적으로 관리하려면 각 명령어의 다양한 옵션을 이해하고 활용하는 것이 중요합니다.

다음 글에서는 Docker Pointainer 같은 GUI 툴 활용법메모리 제한, 네트워크 설정 등 컨테이너 최적화 기법을 다뤄보겠습니다.