Docker 기본 명령어 총정리

Docker 기본 명령어 총정리

기본 정보 확인

명령어 설명
docker version Docker 클라이언트와 서버의 버전 정보 표시
docker info Docker 시스템 정보 출력 (엔진 상태, 플러그인, 리소스 등)
docker --help Docker 명령어 도움말 표시
docker <command> --help 특정 명령어의 상세 도움말 표시 (예: docker container run --help)

Docker 명령어 기본 구조

docker [Management Command] Command [옵션] [인자]

참고: Management Command는 종종 생략됩니다.
예: docker container run → docker run

컨테이너 관리

실행

명령어 설명
docker run [옵션] <이미지명> 새 컨테이너 생성 및 실행
docker run -d --name <컨테이너명> <이미지명> 백그라운드에서 이름을 지정하여 컨테이너 실행
docker start <컨테이너명> 중지된 컨테이너 시작
docker run --env KEY=VALUE <이미지명> 환경 변수를 설정하여 컨테이너 실행
docker run <이미지명> <CMD> 기본 CMD를 오버라이드하여 컨테이너 실행

조회

명령어 설명
docker ps 실행 중인 컨테이너 목록 표시
docker ps -a 모든 컨테이너 목록 표시 (중지된 컨테이너 포함)

중지 및 삭제

명령어 설명
docker stop <컨테이너명> 실행 중인 컨테이너 중지
docker rm <컨테이너명> 중지된 컨테이너 삭제
docker rm -f <컨테이너명> 실행 중인 컨테이너 강제 삭제

팁:

  • 여러 컨테이너 동시 삭제: docker rm -f container1 container2 container3
  • 모든 Docker 컨테이너 삭제: docker rm -f $(docker ps -aq)

이미지 관리

명령어 설명
docker image ls 모든 이미지 목록 표시
docker image ls <이미지명> 특정 이미지 정보 표시
docker pull <이미지명> Docker Hub에서 이미지 다운로드
docker rmi <이미지명> 이미지 삭제

네트워크 관리

명령어 설명
docker network ls 도커 네트워크 목록 표시
docker network create <네트워크명> 새 도커 네트워크 생성
docker network connect <네트워크명> <컨테이너명> 컨테이너를 네트워크에 연결
docker network disconnect <네트워크명> <컨테이너명> 컨테이너를 네트워크에서 분리

볼륨 관리

명령어 설명
docker volume ls 도커 볼륨 목록 표시
docker volume create <볼륨명> 새 도커 볼륨 생성
docker volume rm <볼륨명> 도커 볼륨 삭제

로그 확인 명령어

명령어 설명
docker logs <컨테이너명> 지정한 컨테이너의 로그 출력
docker logs -f <컨테이너명> 실시간 로그 표시
docker logs --tail <n> <컨테이너명> 마지막 n개의 로그 라인만 출력
docker logs --since <시간> <컨테이너명> 특정 시간 이후의 로그만 출력
docker logs --until <시간> <컨테이너명> 특정 시간 이전의 로그만 출력
docker logs --timestamps <컨테이너명> 로그와 타임스탬프 함께 표시

추가 유용한 명령어

명령어 설명
docker logs <컨테이너명> 컨테이너 로그 확인
docker exec -it <컨테이너명> <명령어> 실행 중인 컨테이너에 명령어 실행
docker cp <컨테이너명>:<컨테이너 내 경로> <호스트 경로> 컨테이너에서 호스트로 파일 복사
docker inspect <컨테이너명> 컨테이너의 상세 정보 확인

  • 대부분의 Docker 명령어는 컨테이너 ID 대신 컨테이너 이름을 사용할 수 있습니다.
  • docker run 명령어는 이미지가 로컬에 없으면 자동으로 pull 합니다.
  • 컨테이너 이름을 지정하지 않으면 Docker가 자동으로 임의의 이름을 할당합니다.