본문 바로가기

화상채팅 프로젝트/Docker

[Docker] 기본 명령어 정리

 

기본 구조
docker [명령어 그룹] [세부 명령어] [옵션]

아래는 예시

docker container ls -a
docker image build -t myimage .



 


 

Docker 시스템/기본 정보 확인

 

명령어 설명
docker version 클라이언트 및 서버 버전 확인
docker info Docker 시스템 정보 (컨테이너 수, 이미지 수 등)
docker system df Docker 리소스 사용량 요약 (디스크 사용량 등)

 

 


 

이미지 관련 명령어 (docker image)
명령어 설명
docker image pull <이미지명> 이미지 다운로드
docker image ls or docker images 이미지 목록 조회
docker image rm <이미지명> 이미지 삭제
docker image build -t <이름:태그> . Dockerfile 기반 이미지 빌드

 

예시

docker image build -t myapp:latest .

 

  • myapp: 이미지의 이름 (Repository 이름)
  • latest: 태그 이름 (버전이나 구분자 역할)

기타 예시

 

docker build -t myapp:dev .
docker build -t myapp:prod .
docker build -t mycompany/myapp:v1.2.0 .

 

컨테이너 관련 명령어 (docker container)
명령어 설명 
docker container run -it --name <이름> <이미지> 새 컨테이너 생성 및 실행 (interactively)
docker container ls or docker ps 실행 중인 컨테이너 목록
docker container ls -a or docker ps -a 모든 컨테이너 목록 (중지 포함)
docker container stop <컨테이너ID/이름> 컨테이너 정지
docker container start <컨테이너ID/이름> 컨테이너 시작
docker container restart <ID> 재시작
docker container rm <ID> 컨테이너 삭제

 

 


컨테이너 내부 접근 / 로그 확인

 

명령어 설명
docker exec -it <ID> bash 실행 중인 컨테이너 내부 bash 쉘 접속
docker logs <ID> 로그 출력
docker top <ID> 컨테이너 내부 프로세스 보기
docker inspect <ID> 상세 설정 확인 (JSON 출력)
docker stats 실시간 리소스 사용량 모니터링

 


시스템 정리
명령어 설명
docker system prune 사용하지 않는 이미지, 컨테이너, 네트워크 일괄 삭제
docker image prune 사용하지 않는 이미지 삭제
docker container prune 중지된 컨테이너만 삭제
docker volume prune 사용하지 않는 볼륨 삭제

 


네트워크 / 볼륨 관련

 

명령어 설명
docker network ls 네트워크 목록 확인
docker network create <이름> 사용자 정의 네트워크 생성
docker volume ls 볼륨 목록 조회
docker volume create <이름> 볼륨 생성
docker volume inspect <이름> 볼륨 정보 확인

 

 


Docker Compose

 

명령어 설명
docker-compose up -d 백그라운드로 전체 서비스 실행
docker-compose down 전체 서비스 종료 및 네트워크 제거
docker-compose ps 실행 중인 서비스 목록
docker-compose logs 전체 서비스 로그
docker-compose exec <서비스명> bash 컨테이너 내부 접속

 

 


강제 종료 / 강제 삭제 명령어
명령어 설명
docker container kill <ID> 컨테이너 강제 종료 (SIGKILL 신호 전송)
docker container rm -f <ID> 컨테이너 강제 삭제 (정지 중이거나 실행 중이어도 삭제)
docker image rm -f <이미지ID> 사용 중인 이미지라도 강제로 삭제
docker volume rm -f <볼륨명> 볼륨 강제 삭제
docker network rm <네트워크명> 네트워크 삭제 (사용 중이면 실패할 수 있음)
docker-compose down -v 컨테이너 + 네트워크 + 볼륨까지 함께 삭제

 


컨테이너 실행/중지/관리

 

위 내용중 컨테이너에 관한 명령어가 있는데 아래의 명령어도 같은 작동을 하지만 축약형이라고 이해하면 된다

명령어 설명
docker run [옵션] [이미지명] 이미지로 컨테이너 생성 + 실행
docker start [컨테이너ID/이름] 멈춰둔 컨테이너 실행
docker stop [컨테이너ID/이름] 컨테이너 중지
docker restart [컨테이너ID/이름] 컨테이너 재시작
docker rm [컨테이너ID/이름] 컨테이너 삭제
docker ps 실행 중인 컨테이너 목록 확인
docker ps -a 종료된 것 포함 전체 컨테이너 목록 확인

 


포트 및 볼륨 지정
예시 명령어 설명
docker run -p 8080:80 nginx 호스트 8080 → 컨테이너 80 포트 매핑
docker run -v /내폴더:/컨테이너폴더 ubuntu 볼륨 마운트해서 데이터 공유