⚙️OS/Windows

[Windows] Windows에서 jar파일을 AWS 서버에 배포하기 - (1) 배포를 위한 기본 세팅

뉴발자 2024. 4. 19.
728x90

 

 

 

 

 

 

 

 

 

 

 

 

 

 

그림 1. AWS

 

 

AWS ECS 생성

먼저 서버를 배포하기 전에 AWS의 ECS (Elastic Container Service)를 생성해야 된다.

 

공식문서나 다른 블로그를 찾아보고 클러스터 및 서비스를 등록해주면 된다.

 

https://docs.aws.amazon.com/ko_kr/AmazonECS/latest/developerguide/get-set-up-for-amazon-ecs.html

 

Amazon ECS 사용 설정 - Amazon Elastic Container Service

테스트를 위해 짧은 시간 동안만 허용하는 경우를 제외하고는 해당 인스턴스에 대한 모든 IP 주소(0.0.0.0/0)로부터의 SSH 액세스를 허용하지 않는 것이 보안을 위해 좋습니다.

docs.aws.amazon.com

 

 

프로그램 다운로드 및 설치

먼저 배포를 진행하기 전에 필요한 프로그램들의 설치를 진행한다.

 

명령 프롬프트에서 배포 명령어를 실행하기 위해 필요한 프로그램들이다.

 

1. AWS CLI

aws 명령어를 사용하기 위해 aws cli를 설치해준다.

 

아래 링크로 접속 후 .msi 파일을 다운로드 받아 설치해준다.

 

명령 프롬프트에서 다음 명령어를 입력한 후 다음과 같이 버전이 나오면 설치가 완료된 것이다.

aws --version

 

그림 2. aws cli 설치 후 버전 확인

 

https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/getting-started-install.html

 

최신 버전의 AWS CLI설치 또는 업데이트 - AWS Command Line Interface

이전 버전에서 업데이트하는 경우 unzip 명령을 실행하면 기존 파일을 덮어쓸지 묻는 메시지가 표시됩니다. 스크립트 자동화와 같은 경우에 이러한 프롬프트를 건너뛰려면 unzip에 대한 -u 업데이

docs.aws.amazon.com

 

 

2. Docker

docker 명령어를 사용하기 위해 Docker Desktop 프로그램을 설치해준다.

 

아래 링크로 접속 후 Download for Windows 버튼을 눌러 다운로드 및 설치를 진행한 후 재부팅을 한다.

 

명령 프롬프트에서 다음 명령어를 입력한 후 다음과 같이 버전이 나오면 설치가 완료된 것이다.

docker -v

 

그림 3. Docker Desktop 설치 후 버전 확인

 

https://www.docker.com/get-started/

 

Get Started | Docker

Get started with Docker Desktop and join millions of developers in faster, more secure app development using containers and beyond.

www.docker.com

 

 

aws configure 세팅

자신의 aws에 배포하기 위해서는 aws configure를 세팅해줘야된다.

 

aws 명령어를 사용하기 위해선 액세스 키가 필요하기 때문에 aws에서 액세스키를 발급 받아야 한다.

728x90

 

1. AWS에서 액세스 키 발급받기

AWS 콘솔에 접속 및 로그인 한 후 IAM 서비스로 이동한다.

 

왼쪽 메뉴의 사용자를 누르면 다음과 같이 사용자를 생성할 수 있는 화면이 나온다.

 

아래의 그림처럼 사용자 생성 및 액세스 키 발급을 진행해주면 된다.

 

그림 4. IAM 사용자 생성

 

그림 5. 사용자 세부 정보 지정

 

그림 6. 사용자 세부 정보

 

그림 7. 사용자 권한 설정

 

그림 8. 사용자 생성

 

사용자를 생성한 후 생성한 사용자를 클릭해서 들어가면 '액세스 키 만들기' 버튼이 있다.

 

그림 9. 액세스 키 만들기

 

그림 10. 액세스 키 만들기

 

그림 11. 액세스 키 생성 완료

 

액세스 키와 비밀 액세스 키를 사용해서 aws configure를 등록해준다.

 

2. aws configure 등록

aws configure 명령어를 입력하면 아래 그림과 같은 순서대로 입력할 수 있는 창이 나온다.

 

액세스 키와 비밀 액세스 키를 입력하고 aws 등록 지역 및 포멧을 입력해준다.

그림 12. aws configure 정보 등록

 

 

Dockerfile 생성

Docker로 aws에 배포하기 위해선 Docker 이미지를 만들어서 배포해야 한다.

 

배포 파일을 저장할 폴더를 생성해주고 VS Code를 이용해서 해당 폴더 아래에 Dockerfile 파일을 생성한다.

 

Dockerfile 안에 들어갈 코드는 다음과 같다.

FROM openjdk:18-jdk-slim
ARG JAR_FILE=example.jar
ADD ${JAR_FILE} app.jar
ENV PORT=80
EXPOSE 80/tcp
ENTRYPOINT ["java", "-jar", "/app.jar"]

 

FROM openjdk:18-jdk-slim

 • base 이미지를 openjdk:18-jdk-slim을 사용한다.

 • jdk가 없는 환경에서 jdk가 깔린 OS를 구축한다.

 

ARG JAR_FILE=example.jar  

 • 변수를 선언하는 키워드이다.

 • 변수명 'JAR_FILE'에 example.jar 란 디폴트 값을 선언한다.

 • 리눅스 변수와 동일하게 ${}로 접근할 수 있다.

 

ADD ${JAR_FILE} app.jar

 • 호스트의 ${JAR_FILE}을 컨테이너안에 app.jar란 이름의 파일로 복사한다.

 

ENV PORT=80

 • app.jar파일을 컨테이너에서 실행할 때 PORT 번호를 지정한다.

 

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

• 해당 이미지를 컨테이너로 생성할 때 실행하고자 하는 명령어를 작성한다.

• 해당 컨테이너가 생성될 때 app.jar파일이 실행된다.

 

 

https://tlseoqja.tistory.com/84

 

[Windows] Windows에서 jar파일을 AWS 서버에 배포하기 - (2) Dockerfile을 이용한 AWS 배포

AWS 배포를 위한 기본 세팅 https://tlseoqja.tistory.com/83 Dockerfile을 사용해 AWS에 배포하기 명령 프롬프트창을 열고 Dockerfile을 생성한 폴더로 이동한다. 아래 순서대로 명령어를 입력해서 Docker 이미지

tlseoqja.tistory.com

 

 

 

 

 

 

 

 

 

 

728x90

댓글