도커 명령어
| topics | |
| types | |
| tags |
#docker #command
|
도커 명령어
자주 쓰는 Docker 명령어를 정리했다. 전체 흐름은 이렇다:
로그인 → 이미지 빌드 → 태그 → 푸시 → 컨테이너 실행 → 확인 → 정리
이미지 관련 명령어
# 이미지 목록 확인
docker images
# 이미지 빌드 (현재 디렉토리의 Dockerfile 사용)
docker build -t 이미지이름 .
# 이미지에 태그 달기 (Docker Hub에 푸시하려면 username 필요)
docker tag 이미지이름 username/이미지이름:latest
# 이미지 삭제
docker rmi 이미지이름
컨테이너 관련 명령어
# 컨테이너 실행
docker run -d --name 컨테이너이름 -p 호스트포트:컨테이너포트 이미지이름
# 실행 중인 컨테이너 확인
docker ps
# 모든 컨테이너 확인 (중지된 것 포함)
docker ps -a
# 컨테이너 중지
docker stop 컨테이너id
# 컨테이너 삭제 (중지 상태여야 함)
docker rm 컨테이너id
# 컨테이너 로그 확인
docker logs 컨테이너id
주의: 컨테이너를 삭제하려면 먼저 중지해야 한다.
Docker Hub 관련 명령어
# 로그인
docker login -u username
# 이미지 푸시
docker push username/이미지이름:latest
# 이미지 풀
docker pull 이미지이름
Docker Hub 로그인 팁: 소셜 로그인으로 가입한 경우, 웹에서 Docker Hub → Account Setting → Password → reset 해서 비밀번호 설정해야 CLI에서 로그인 가능하다.
docker run 옵션 정리
| 옵션 | 설명 | 예시 |
|---|---|---|
-d |
백그라운드 실행 | docker run -d nginx |
--name |
컨테이너 이름 지정 | --name my-nginx |
-p |
포트 포워딩 (호스트:컨테이너) | -p 8080:80 |
-v |
볼륨 마운트 | -v /host/path:/container/path |
-e |
환경 변수 설정 | -e MY_VAR=value |
--rm |
종료 시 자동 삭제 | docker run --rm nginx |
실습 예제: Nginx 커스텀 이미지 만들기
# 1. 작업 디렉토리 생성
mkdir my-nginx-custom && cd my-nginx-custom
# 2. Dockerfile 생성
cat <<EOF > Dockerfile
FROM nginx
COPY index.html /usr/share/nginx/html/index.html
EOF
# 3. 이미지 빌드
docker build -t my-nginx-custom .
# 4. 컨테이너 실행
docker run -d --name custom-web -p 8090:80 my-nginx-custom
# 5. 확인
curl localhost:8090