[Spring] 심화프로젝트 -트렐로 만들기(배포시 환경변수, 프로파일 설정)

JunWoo An·2024년 1월 2일
0

스파르타코딩클럽

목록 보기
41/46
post-thumbnail

로컬에서 구현이 끝난 서버를 AWS의 EC2, RDS, ElasticCache(Redis)를 사용하여 배포해보자!

EC2, RDS, ElasticCache에 관한 생성 및 설정은 생략하고 시작해보겠다.

우선 서버를 EC2에 올리기전에 로컬에서 RDS와 연결하여 테스트를 해본 후 올리는 방법을 선택하였다.

우선 Host에는 RDS 생성 후 생성된 엔드포인트를 넣어 준 후 MYSQL의 포트번호인 3306을 지정해준다. 이후 RDS 생성할때 만든 User와 Password를 넣어준 후 설정한 데이터베이스 이름또한 넣어준다.


다음으로 서버를 EC2로 올리기 위해 기능구현과 테스트코드 작성이 끝난 로컬에서 gradle - task - build를 통해 해장 자바의 실행파일인 jar확장자를 가진 SNAPSHOT파일을 만들어 준다. 이후에 FileZila를 이용하여 생성한 EC2에 서버를 업로드 해준다.

다음으로 Window의 경우에는 GitBash를 사용하여 서버설정을 진행하는데 GitBash를 실행하면 위와같은 창이 뜬다. 그럼 이곳에

ssh -i {EC2생성시발급받은 Key위치} ubuntu@{EC2 public 주소}

를 입력하면

Last login: Tue Jan  2 13:03:08 2024 from ########
ubuntu@ip-###-##-###:~$

와같이 ubuntu@가 명령어 입력콘솔 앞에 붙어있다면 로그인 성공이다.
다음으로 할 작업은 앞서 기능구현 및 테스트시 아래와 같은 여러개 또는 단일로 구성된 properties파일들이 있고 해당 파일안엔느 각각의 profile이 정해져있는데 로컬, 테스트, 배포의 환경마다 다른 profile을 설정하여 다른 파일들을 사용하게된다. 그렇다면 배포환경인 AWS EC2에서 배포 profile을 사용하게 하는지 지금부터 알아보자.

앞선 콘솔창에서 아래와같이 입력하게되면

$ vi ~/.bashrc

아래와같은 쉘파일이 나오게 되는데 제일 아래줄에 해당 서버에 필요한 환경변수들을 입력해준다.
이때 insert버튼을 눌러 입력할수있고 esc + :wq를 입력하여 저장을 완료한 후 쉘파일을 빠져나올수있다.

창을 빠져나온 후 아래의 명령어를 실행하여 환경변수의 적용 및 테스트를 시행해본다.

$ source ~/.bashrc
$ echo $profile      // profile로 저장된 환경변수 확인

다음으로 작성한 프로파일을 선택하기 위해 EC2를 실행할때 아래 와같은 코드로 실행한다.

java -jar Jamrello-0.0.1-SNAPSHOT.jar --spring.profiles.active=aws

아래와 같이 Spring표시와 함께 에러가없이 초기화가 된다면 성공!

profile
도전하는 사람

0개의 댓글