DevOps/Docker

[Docker] Dockerfile을 이용해 SpringApplication 빌드 및 실행

SeungbeomKim 2023. 9. 14. 23:15
반응형

Dockerfile을 이용해서 image를 생성하고, SpringWebApplication을 실행해보려고 합니다.

dependency는 Spring Web만 추가하면 끝입니다. 

수동 build (Grade -> Tasks -> build -> bootJar)
Gradle -> Tasks -> build -> bootJar

우선 여기서 build를 진행해 줘야 jar파일이 생깁니다. 이후 cd build/libs로 이동하면, 다음과 같이 jar파일이 있음을 확인하실 수 있습니다.

jar 파일 경로 cd build/libs

 

추가적으로 도커로 실행하기 위해 openjdk 11 images을 다운로드 받아야 합니다. (docker pull openjdk:11-jre-slim)

 

docker images 찾은 후 openjdk 다운로드

 

.jar파일이 있는 곳에 Dockerfile을 작성해야 합니다. 

 

Dockerfile

  • FROM : [images name]:[tag name]
  • ARG: build 시점에만 사용되는 변수
  • COPY: JAR_FILE의 변수를 app.jar로 복사
  • ENTRYPOINT: 컨테이너가 실행될 때 실행되는 명령 지정 (java -jar /app.jar)

 

dockerfile build (Docker build -t [image name] .)

dockerfile 빌드

 

컨테이너 실행 (docker run -d(background) -p(portforwarding) [image_name])

실행 화면
컨테이너 구동 확인

 

다음과 같이 dockerfile을 작성하여 SpringWebApplication을 구동해 볼 수 있었습니다. 애플리케이션 구동에 필요한 환경설정을 Dockerfile을 통해 구축할 수 있었습니다. 

 

<참고 자료>

https://da2uns2.tistory.com/entry/Docker-%EB%8F%84%EC%BB%A4%EC%97%90-Spring-Boot-%EA%B5%AC%EC%B6%95%ED%95%98%EA%B8%B0

 

[Docker] 도커에 Spring Boot 구축하기

목차 1. Spring Boot 코드 작성 2. jar 파일 생성 3. Dockerfile 만들기 4. 컨테이너 실행하기 1. Spring Boot 코드 작성 간단한 Hello World 코드를 구현했다. 소스코드는 다음과 같다. package hello.hellospring; import org

da2uns2.tistory.com

 

반응형