D: 🚀 개발자라면 반드시 알아야 할 Docker 명령어를 한눈에 정리! 컨테이너 기반 개발 환경에서 Docker는 이제 필수 도구입니다. 하지만 수많은 명령어 중에서 어떤 것을 먼저 익혀야 할지 헷갈리시나요? 이번 포스팅에서는 실무에서 자주 사용하는 Docker 핵심 명령어를 카테고리별로 정리해드립니다.
🔥 1. 기본 컨테이너 관리 명령어
(1) 컨테이너 실행 & 정지
# 이미지 다운로드 + 컨테이너 실행 (최초 1회)
docker run -d -p 8080:80 --name my-nginx nginx
# 실행 중인 컨테이너 정지
docker stop my-nginx
# 정지된 컨테이너 다시 시작
docker start my-nginx
-d
: 백그라운드 실행-p 8080:80
: 호스트의 8080포트 ↔ 컨테이너 80포트 연결--name
: 컨테이너 이름 지정 (미지정 시 랜덤 생성)
(2) 컨테이너 상태 확인
# 실행 중인 컨테이너 목록
docker ps
# 모든 컨테이너 목록 (실행 + 정지 상태)
docker ps -a
# 컨테이너 로그 확인
docker logs my-nginx
🛠️ 2. 이미지 관리 명령어
(1) 이미지 검색 & 다운로드
# Docker Hub에서 이미지 검색 (예: Ubuntu)
docker search ubuntu
# 이미지 다운로드
docker pull ubuntu:22.04
태그(:22.04)
미지정 시latest
버전 자동 선택
(2) 이미지 삭제
# 사용하지 않는 이미지 일괄 삭제
docker image prune
# 특정 이미지 삭제
docker rmi ubuntu:22.04
📦 3. 네트워크 & 볼륨 관리
(1) 네트워크 생성
# 사용자 정의 네트워크 생성
docker network create my-network
# 네트워크에 컨테이너 연결
docker run -d --network my-network --name app1 my-app
(2) 볼륨 마운트 (데이터 영구 저장)
# 호스트 디렉토리 마운트
docker run -v /host/path:/container/path nginx
# Docker 볼륨 사용
docker volume create my-volume
docker run -v my-volume:/data mysql
🧩 4. 실무 활용 팁
(1) 실행 중인 컨테이너 진입
# 컨테이너 내부 쉘 접근 (예: Ubuntu 컨테이너)
docker exec -it my-ubuntu /bin/bash
-it
: 인터랙티브 모드로 터미널 연결
(2) Docker Compose로 멀티 컨테이너 관리
# docker-compose.yml 예시
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: password
# compose 파일 실행
docker-compose up -d
💡 5. 문제 해결 명령어
# 컨테이너 리소스 사용량 확인
docker stats
# 이미지/컨테이너 디스크 사용량
docker system df
# 모든 컨테이너/이미지/네트워크 일괄 삭제 (⚠️ 주의!)
docker system prune -a
🎯 마무리
이제 Docker 명령어로 개발 환경 설정 시간을 80% 이상 절약할 수 있습니다! 🎉
도커를 활용하면 복잡한 환경 설정 없이도 어디서나 동일한 개발 환경을 구축할 수 있죠.
💬 궁금한 점이나 추가로 알고 싶은 명령어가 있다면 댓글로 남겨주세요!
#Docker #DevOps #개발팁