Docker 명령어

김기훈·2026년 2월 11일

Docker

목록 보기
1/2

docker compose down
docker compose up --build

  • 캐시 삭제

    • docker builder prune
  • 캐시 없이 완전 새로 빌드하기
    • docker-compose build --no-cache

기본

# DB 초기화

- 1. 특정 서비스(db)의 컨테이너와 볼륨을 함께 삭제
# -v: 볼륨(Volume) 삭제 옵션. 이 옵션이 없으면 데이터는 호스트에 남습니다.
docker compose down -v db

- 2. 삭제 후 다시 실행
# 데이터베이스 엔진이 비어있는 볼륨을 확인하고 초기화 프로세스를 가동합니다.
docker compose up -d db

# 빌드 
- 1. 이미지를 새로 빌드하고 컨테이너 실행
# 소스 코드나 Dockerfile 수정 사항을 즉시 반영할 때 사용
docker compose up --build

- 2. 백그라운드 실행 + 빌드 강제
docker compose up -d --build

- 3. 특정 서비스만 다시 빌드해서 실행
# 전체를 빌드하지 않고 'api' 서비스만 갱신
docker compose up -d --build api

- 4. 서비스 중지 및 리소스 삭제
# -v: 익명 볼륨까지 깔끔하게 삭제
docker compose down -v
```![](https://velog.velcdn.com/images/nike6736/post/d22f8f7f-e6b7-4c60-8665-57894de17f5b/image.png)

---
## 핵심 명령어

---
### 이미지 관리 및 빌드 (Image & Buildx)
- 2026년부터는 docker build 실행 시 내부적으로 docker buildx가 기본 엔진으로 동작
  - 멀티 플랫폼 지원과 캐시 최적화가 핵심

# 1. 멀티 플랫폼 이미지를 빌드하고 레지스트리에 푸시
# --platform: linux/amd64와 linux/arm64 환경 모두를 지원하도록 빌드
# --push: 빌드 완료 후 즉시 레지스트리에 업로드
docker buildx build --platform linux/amd64,linux/arm64 -t my-app:latest --push .

# 2. 이미지 레이어 및 취약점 즉시 확인 (Docker Scout 통합)
# quickview: 이미지의 보안 상태와 권장 수정 사항을 요약해서 출력
docker scout quickview my-app:latest

# 3. 사용하지 않는 이미지 정리
# -a: 태그가 없는 이미지뿐만 아니라 사용 중이지 않은 모든 이미지 삭제
docker image prune -a

컨테이너 실행 및 디버깅 (Container & Debug)

  • 과거의 docker exec를 넘어, 2026년에는 컨테이너 상태를 손상시키지 않고
    • 별도의 도구 박스를 연결하는 docker debug가 표준이 되었습니다.
# 1. 컨테이너 생성 및 실행
# -d: 백그라운드 실행 (Detached mode)
# -p: 호스트 8080 포트를 컨테이너 80 포트에 바인딩
# --name: 컨테이너에 고유 이름 부여
docker container run -d -p 8080:80 --name web-server nginx:latest

# 2. 실행 중인 컨테이너에 도구 세트를 포함해 디버깅 진입
# 기존 exec와 달리, 타겟 컨테이너에 쉘이 없어도 Docker가 제공하는 디버그 환경으로 접속
docker debug web-server

# 3. 실시간 리소스 사용량 모니터링
# CPU, 메모리, 네트워크 I/O 상태를 스트리밍으로 확인
docker container stats web-server

멀티 컨테이너 관리 (Docker Compose)

  • Docker Compose V2(및 SDK 기반의 V5)가 완전히 표준화되었습니다.
    • 특히 개발 중 코드 변경을 실시간으로 반영하는 watch 모드가 필수적입니다.
# 1. 모든 서비스 실행
# -d: 백그라운드 모드
docker compose up -d

# 2. 실시간 코드 동기화 및 핫 리로드 (Watch Mode)
# 소스 코드 변경 시 컨테이너 내부로 자동 복사하거나 서비스를 재시작
docker compose watch

# 3. 실행 중인 서비스의 로그 확인
# -f: 실시간 로그 추적 (Follow)
docker compose logs -f app

시스템 및 네트워크 관리 (System & Network)

# 1. 사용자 정의 네트워크 생성
# 브릿지 네트워크를 생성하여 컨테이너 간 격리된 통신 환경 구축
docker network create --driver bridge my-isolated-net

# 2. 볼륨 상세 정보 확인
# 데이터 보존을 위한 볼륨의 마운트 경로 및 설정 확인
docker volume inspect my-db-data

# 3. 도커 시스템 전체 리소스 점검
# 현재 도커가 사용 중인 디스크 공간의 상세 내역 출력
docker system df
profile
안녕하세요.

0개의 댓글