SpringBoot로 Docker Image 만들어보기
- IntelliJ - New Project - Spring Initializr - 새로운 스프링 프로젝트 생성
  
- root에 dockerfile파일 생성 후 아래 코드 붙여넣기
  FROM openjdk:17-jdk-alpine // 어떤 image를 사용할 것인가 ARG JAR_FILE=build/libs/*.jar // jar 파일로 만들어라 COPY ${JAR_FILE} demo-0.0.1-SNAPSHOT.jar // 실행 ENTRYPOINT ["java","-jar","/demo-0.0.1-SNAPSHOT.jar"]- 내 컴퓨터에 깔려있는 jdk version과- 프로젝트의 자바 버전과- 생성할 docker image의 자바 버전을 모두 맞춰주어야지 아래 오류로부터 자유로울수 있었다!- Exception in thread "main" java.lang.UnsupportedClassVersionError: com/example/docker/DockerApplication has been compiled by a more recent version of the Java Runtime (class file versi on 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0
 
- bootJar로 build
  
 - JAR_FILE=build/libs디렉토리 안에 jar 파일이 생긴다.
- terminal로 jar 파일 생성, 이미지 빌드
 docker build -t docker_hub_id/docker_img_name .
- 도커 파일 실행
 docker run docker_hub_id/docker_img_name
 위에서 만든 도커 이미지를 실행하면
 인텔리제이에서 스프링부트 어플리케이션이 뜨는 것을 볼 수 있고
  
 Docker Desktop에서 실행 중인 이미지를 확인할 수 있다
  
 위와 같이 Spring Application이 실행된다.
- Docker Hub에 도커 이미지 올리기
 docker push docker_hub_id/docker_img_name
- ec2에 접속해서 올린 도커 이미지 다운, 실행해보기- MobaXTerm으로 접속 (Windows)- ec2 서버에 Docker가 없다면 다운sudo yum install docker sudo systemctl start docker
- docker image 다운
 sudo docker pull docker_hub_id/docker_img_name
- docker 이미지로 SpringBoot Application 실행
 sudo docker run -p 9000:8080 docker_hub_id/docker_img_name
  
 
- ec2 서버에 Docker가 없다면 다운
 
- MobaXTerm으로 접속 (Windows)
Author And Source
이 문제에 관하여(SpringBoot로 Docker Image 만들어보기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jummi10/create-Docker-Image-with-SpringBoot저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)