유미의 기록들

[최종 프로젝트] Spring Boot를 Docker로 EC2에 배포 본문

대외활동 기록/내일배움캠프

[최종 프로젝트] Spring Boot를 Docker로 EC2에 배포

지유미 2024. 11. 18. 22:43
728x90
반응형

구축한 AWS EC2와 RDS 환경에서 SpringBoot 애플리케이션을 Docker로 배포하면서 발생한 문제들을 해결한 과정을 정리했다

1. SpringBoot Docker Image 만들기
2. 로컬에 Docker Container 실행
3. Docker Hub에 Push하기
4. EC2에서 Docker Image Pull 받기
5. EC2에서 Docker Container 실행

1. SpringBoot Docker Image 생성

도커 이미지를 만들기 위해서는 DockerFile을 작성해야 한다. 

DockerFile을 작성하기 전에 SpringBoot 애플리케이션을 jar 파일로 빌드를 하였다

 

로컬의 SpringBoot 프로젝트 루트 디렉토리에 DockerFile 만들어서 다음과 같이 작성했다

FROM openjdk:17-jdk
COPY build/libs/*.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "app.jar"]

 

Docker 이미지 빌드

DockerFile이 있는 디렉토리인 프로젝트 루트 디렉토리에서 진행하였다

docker build -t jiyumi/devloop .

 

Docker Desktop을 보면 이미지가 만들어진 것을 확인할 수 있다

 

 

2. 로컬에 Docker Container 실행

EC2에 배포를 하기 전, 제대로 실행이 되는 지 확인해보았다

docker run --name devloop-container --env-file .env -p 8080:8080 -d jiyumi/devloop

 

3. Docker Hub에 Push하기

만들어진 SpringBoot Docker 이미지를 도커 허브에 Push 하였다

docker login
docker push jiyumi/devloop:latest

 

도커 허브 사이트에서 푸시된 이미지를 확인할 수 있다

728x90
반응형
Comments