Cherish

[Docker] Part 2. Windows에서 Spring Boot 프로젝트 Docker 이미지 만들기 본문

Docker

[Docker] Part 2. Windows에서 Spring Boot 프로젝트 Docker 이미지 만들기

Cherishj 2025. 11. 24. 16:49
반응형

 

https://cherish-hj.tistory.com/27

Docker란 무엇인가?

기본 개념과 사용이유에 대한 내용은 위 링크 참고


 

이제 실제로 Window 로컬에서 만든 백엔드 프로젝트
Docker 이미지로 패키징해보자.

여기서는 다음 요소를 기준으로 진행한다.

  • OS: Windows
  • Framework: Spring Boot
  • Build: Gradle
  • Java 17이
  • MySQL 사용

1. 프로젝트 빌드(JAR 생성)

윈도우 기준으로 CMD 창을 켜고

프로젝트 루트로 이동 후 아래 명령어 실행

(또는 이클립스, 인텔리제이 등 IDE에서 바로 빌드해도됨)

gradlew clean build
에러 없이 빌드가 성공했다면 
 
build/libs/프로젝트명-0.0.1-SNAPSHOT.jar

이런 파일이 생성된다.

 

이제 이 JAR 파일이 Docker 컨테이너 안으로 들어가 실행되는것이다.


2. Dockerfile 만들기

프로젝트 루트 위치에 파일명 "Dockerfile" 이라는 확장자 없는 파일을 생성 후 아래 내용 복붙후 저장

 

FROM eclipse-temurin:21-jdk
WORKDIR /app
COPY build/libs/*.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app/app.jar"]

 

첫줄에 21-jdk 부분은 jdk 버전에 맞춰 숫자만 바꿔주면 된다.

 
 

<파일 내용 설명>

  • Java 21 JDK가 포함된 리눅스 이미지 사용
  • app.jar를 컨테이너 안 /app 폴더로 복사
  • 앱 실행 시 java -jar로 실행

3. Docker 이미지 빌드

1. Docker Desktop 실행

 

2. 아래 명령어 실행

docker build -t [프로젝트명]:latest .

 

3. 성공 시 아래 메세지 출력 확인

Successfully tagged [프로젝트명]:latest

 


4. Docker 컨테이너 실행

8080 포트 매핑해서 실행

docker run -d --name [프로젝트명]-app -p 8080:8080 [프로젝트명]:latest

 

  • [프로젝트명]:latest 이미지로 컨테이너 생성
  • 브라우저에서 http://localhost:8080 접근 가능

5. 정상실행 확인

* docker 실행 컨테이너 확인하는방법

docker ps

 

위 명령어를 실행했을 때 

아래와 같이 프로세스 표시되면 실행성공.

 

docker 실행되지 않았을 경우에는 아래 괄호처럼 내용이 없음

CONTAINER ID   IMAGE   COMMAND   CREATED   STATUS   PORTS   NAMES
(아무것도 없음)
 
API 서버라면 Postman 또는 브라우저로 GET 요청해보면 된다.

여기까지 성공했다면

이제 운영 서버(Linux)로 옮기기만 하면 된다.
즉, 배포 준비 완료 상태가 된것임

 

다음 포스팅은 Docker 이미지 Linux 서버에 배포하는 방법을 다뤄볼 예정!

반응형
Comments