수업에서 진행한 Docker 실습 중심 정리이다.
목표: Dockerfile 작성 → Docker Hub 로그인 → 이미지 태그&빌드 → push&pull → 실행까지 완벽 이해
Docker Hub
이미지 공유 공간인 DockerHub를 통해 버전 관리 및 배포(push&pull)가 가능
잘 알려진 오픈소스 sw 프로그램들은 이미 docker_hub에 대부분 업로드 돼 있음
개인 또는 회사차원에서 docker hub에 private 또는 public 이미지 업로드 가능
핵심 워크플로우
docker login → build/tag → push → pull → run
docker login
docker hub회원 가입 → Docker CLI를 사용하여 Docker Hub에 로그인
name과 password사용
작업완료후 docker logout
docker login
docker logout
CLI로 로그인 시 웹브라우저로 이동하여 로그인 수행됨Docker desktop 어플리케이션 내 로그인 된 모습 확인 가능
docker build
도커 빌드 및 태그지정 docker build -t username/imagename:tag .
. = 현재 디렉토리(빌드 컨텍스트)
빌드 컨텍스트
Docker 이미지를 빌드할 때 Docker 데몬에게 전송되는 파일과 디렉토리의 집합
Dockerfile이 실행될 때 참조하는 모든 파일과 리소스를 포함
docker build -t [username]/[imagename]:[tag] .
docker tag
이미 만들어진 이미지의 경우 docker tag 이미지명 username/imagename:tag
일반적으로 image명은 username과 imagename으로 구성
이때, imagename은 이미지를 저장할 repository(저장소)의 이름
docker tag testjava:1.0 easydev/helloworld:v1.0
docker push
Docker Hub에 이미지 업로드 docker push username/imagename:tag
docker push easydev/helloworld:v1.0
docker pull
Docker Hub에서 이미지 다운로드 docker pull yourusername/yourimagename:tag
docker pull easydev/helloworld:v1.0
docker run
업로드 후 실행 docker run -d -p 8080:80 yourusername/myapp:버전명
또는 바로 pull&run
docker run -d -p 8080:80 easydev/helloworld:v1.0
실습 화면 예시
이미지 빌드 -> 업로드
docker hub 내 이미지 확인
| 단계 | 명령어 | 설명 |
|---|---|---|
| 로그인 | docker login | Docker Hub 인증 |
| 빌드 | docker build -t username/imagename:tag . | 이미지 빌드&태그 |
| 태그 | docker tag 이미지명 username/imagename:tag | 기존 이미지 태그 |
| 업로드 | docker push username/imagename:tag | Hub로 업로드 |
| 다운로드 | docker pull username/imagename:tag | 이미지 받기 |
| 실행 | docker run -d -p 8080:80 username/imagename:tag | 컨테이너 실행 |
✅ 정리
이제 로컬 → Docker Hub → 다른환경 배포 파이프라인이 완성