본문 바로가기

Tech/Tips

Spring boot 프로젝트 3분만에 dockerize하기

반응형

이미지 출처 : Pixabay

Spring boot 프로젝트 생성 후, Dockerfile을 작성하여 도커 이미지를 만들고 띄우는 방법에 대하여 알아보겠습니다.

우선 간단한 spring boot 프로젝트를 생성합니다. 혹은 이미 있던 스프링 부트 프로젝트도 괜찮습니다.

그 어떤 디펜던시도 추가하지 않거든요!

(프로젝트 진행을 위하여 간단한 Spring cloud config 서버를 작성하였습니다. 이에 대해서는 추후에 포스팅하겠습니다.)

 

그리고 프로젝트 최상단 경로에 Dockerfile을 만들어 줍니다.

FROM docker.io/azul/zulu-openjdk-alpine

LABEL maintainer="seanma@kakao.com"

EXPOSE 8888

ARG JAR_FILE=target/cloudconf_demo-0.0.1-SNAPSHOT.jar

COPY ${JAR_FILE} cloudconf.jar

ENTRYPOINT ["java", "-jar", "/cloudconf.jar"]

 

여기서 cloudconf_demo-0.0.1-SNAPSHOT.jar, cloudconf.jar의 이름을 프로젝트에 맞게 변경해주시면 됩니다.

프로젝트 구조

이후 메이븐을 통하여 빌드합니다.

mvn install -Dmaven.test.skip=true

 

.jar 파일 빌드 성공

그리고 docker build 명령어를 사용하여 빌드합니다.

docker build -t cloudconf . 

 

dockerfile 빌드 성공

그리고 마지막으로 docker run 명령어를 사용하여 컨테이너를 실행합니다.

docker run -itd -p 8888:8888 --name cloudconf cloudconf

 

컨테이너 실행 성공!

docker logs 명령어를 사용하여 실행 결과를 확인합니다.

docker logs cloudconf

 

로그 정상적으로 올라오는거 확인 완료

curl 명령어를 사용하여 정상 동작을 확인합니다.

cloudclientdemo-dev.yml 파일 내용 확인

모든 소스코드는 다음 git repository에서 확인하실 수 있습니다 : github.com/SeanMa-kr/cloudconf_demo

 

SeanMa-kr/cloudconf_demo

Demo spring cloud config server application. Contribute to SeanMa-kr/cloudconf_demo development by creating an account on GitHub.

github.com

 

반응형