IT/doker

도커 기본 명령어 정리

generator 2025. 2. 6. 10:34

도커는 컨테이너를 사용하여 어플리케이션을 개발, 배포, 실행하는 데 도움을 주는 플랫폼입니다. 도커를 효과적으로 사용하기 위한 몇 가지 기본 명령어를 정리해 보았습니다.

1 이미지 관련 명령어

  • docker pull <image_name>: Docker Hub 또는 다른 레지스트리에서 이미지를 다운로드합니다.
    • 예시: docker pull ubuntu:latest (최신 우분투 이미지 다운로드)
  • docker images: 로컬에 저장된 이미지 목록을 보여줍니다.
    • 옵션: -a (모든 이미지), --filter (필터링) 등
  • docker rmi <image_id_or_name>: 로컬에 저장된 이미지를 삭제합니다.
    • 주의: 실행 중인 컨테이너가 사용하는 이미지는 삭제할 수 없습니다.
    • 예시: docker rmi ubuntu:latest (최신 우분투 이미지 삭제)
  • docker build -t <image_name> <path>: Dockerfile을 사용하여 이미지를 빌드합니다.
    • -t 옵션으로 이미지 이름과 태그를 지정할 수 있습니다.
    • <path>는 Dockerfile이 있는 디렉토리 경로입니다.
    • 예시: docker build -t my-app . (현재 디렉토리의 Dockerfile로 이미지 빌드)

2 컨테이너 관련 명령어

  • docker run <options> <image_name> <command>: 이미지를 기반으로 컨테이너를 생성하고 실행합니다.
    • 주요 옵션:
      • -d: 백그라운드에서 실행 (detached mode)
      • -p <host_port>:<container_port>: 호스트와 컨테이너 포트 매핑
      • -v <host_path>:<container_path>: 호스트와 컨테이너 볼륨 마운트
      • --name <container_name>: 컨테이너 이름 지정
      • -e <variable>=<value>: 환경 변수 설정
    • 예시: docker run -d -p 8080:80 --name my-web-container nginx (nginx 컨테이너 실행)
  • docker ps: 실행 중인 컨테이너 목록을 보여줍니다.
    • 옵션: -a (모든 컨테이너), -l (최근 실행된 컨테이너) 등
  • docker stop <container_id_or_name>: 실행 중인 컨테이너를 중지합니다.
  • docker start <container_id_or_name>: 중지된 컨테이너를 시작합니다.
  • docker restart <container_id_or_name>: 컨테이너를 재시작합니다.
  • docker rm <container_id_or_name>: 중지된 컨테이너를 삭제합니다.
    • 옵션: -f (강제 삭제)
  • docker exec -it <container_id_or_name> <command>: 실행 중인 컨테이너 내에서 명령어를 실행합니다.
    • -it: 상호 작용 모드 (터미널 접속)
    • 예시: docker exec -it my-web-container bash (컨테이너 내에서 bash 쉘 실행)
  • docker logs <container_id_or_name>: 컨테이너의 로그를 확인합니다.
  • docker inspect <container_id_or_name>: 컨테이너의 상세 정보를 보여줍니다.

3 기타 명령어

  • docker-compose up: docker-compose.yml 파일을 기반으로 여러 컨테이너를 한 번에 실행합니다.
  • docker-compose down: docker-compose로 실행된 컨테이너들을 중지하고 삭제합니다.
  • docker network ls: 도커 네트워크 목록을 보여줍니다.
  • docker volume ls: 도커 볼륨 목록을 보여줍니다.

팁:

  • 대부분의 도커 명령어는 컨테이너 ID 또는 이름 대신 컨테이너 이름을 사용할 수 있습니다.
  • docker --help 또는 docker <command> --help를 통해 각 명령어의 상세 옵션을 확인할 수 있습니다.