도커는 컨테이너를 사용하여 어플리케이션을 개발, 배포, 실행하는 데 도움을 주는 플랫폼입니다. 도커를 효과적으로 사용하기 위한 몇 가지 기본 명령어를 정리해 보았습니다.
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를 통해 각 명령어의 상세 옵션을 확인할 수 있습니다.