Aws

Docker로 Java ( jar, war ) 배포하기

wngnl05 2024. 12. 24. 14:53

참고 코드

더보기
package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
public class <파일 이름> {

    public static void main(String[] args) {
        SpringApplication.run(<파일 이름>.class, args);
    }
}

@RestController
@RequestMapping("/")
class MyController {

    @GetMapping("/red")
    public String red() {
        return "{ \"color\": \"red\" }";
    }

    @GetMapping("/blue")
    public String blue() {
        return "{ \"color\": \"blue\" }";
    }

    @GetMapping("/health")
    public String health() {
        return "{ \"status\": 200 }";
    }
}

 

 

 

링크에 에 접속하여 사진처럼 버튼을 체크하고 GENERATE를 눌러줍니다.

다운받은 폴더의 압축을 풀고 Instance에 끌어와줍니다.

 

demo - src - main - java를 누르면 DemoApplication.java가 나오는데

코드를 사용할 java코드로 변경해줍니다. java 코드에 맞게 파일 이름을 수정해주고

 

 

sudo yum install java-devel
sudo yum install maven -y

 

 

cd demo
mvn clean
mvn package

 

 

Dockerfile

FROM maven:latest
COPY ./demo/target/demo-0.0.1-SNAPSHOT.jar ./app.jar
EXPOSE 8080
CMD ["java", "-jar", "./app.jar"]