일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 백엔드 인턴십
- 람다함수
- EC2
- 코딩테스트
- self
- 집계함수
- PYTHON
- 컴프리헨션
- Jar배포
- 조건연산
- 파이써닉코드
- Comprehension
- cerbot
- RDS
- todo project
- API
- 행렬곱
- sqlalchemy
- 파이썬
- mock server
- Django
- numpy
- 토이프로젝트
- 함수
- 클래스
- spring boot
- 프로그래머스
- 프리온보딩
- yaml
- Postman
- Today
- Total
build my life
[AWS] Spring Boot project AWS EC2 배포 (2) RDS 연동 본문
DB 인스턴스 생성
1. 원하는 DB 엔진 선택
2. 프리티어 선택
3. DB 설정
- 인스턴스 명
- 사용자 이름
- 비밀번호
4. 인스턴스 유형 선택
- 조금의 과금을 막기 위하여 db.t2.micro 설정
5. 스토리지 설정
- 스토리지 자동 조정 활성화 비활성화!!
6. 연결 설정
- 퍼블릭 엑세스 설정해야지 퍼블릭 IP로 접근이 가능하다
- VPC 보안그룹은 기존 항목이 있다면 체크, 없다면 새로 생성해서 사용한다.
7. 추가 구성
- 데이터베이스 이름 설정
- 개인 프로젝트 테스트용이기 때문에 백업이 필요 없어서 비활성화
- 파라미터 그룹 설정한게 있다면 추가로 설정해주기(선택)
8. 파라미터 그룹 생성
설정 목록) 각 상황에 맞게 설정하면 될듯!
- time_zone : Asia/Seoul
- collation_server & collation_connection : utf8mb4_general_ci
- character_set_client, connection, database, fildsystem, results, server : utf8mb4
- max_connections : 150
9. 데이터베이스 파라미터 그룹 설정해주면 끝!
10. 배포하고자 하는 spring boot project에 DB 설정에 RDS 정보 매핑하기
aws rds 정보를 application-aws.properties에 저장하고
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://<엔드포인트>:3306/todolist
spring.datasource.username=<마스터이름> #root
spring.datasource.password=<마스터패스워드> #1234
# 필요에 따라 설정
spring.jpa.hibernate.ddl-auto=update
spring.jpa.generate-ddl=true
spring.jpa.show-sql=true
11. gradle build -> jar 파일 생성하기
bootJar를 실행하면 아래와 같이 build > libs > .jar 파일 생성
11. EC2에 .jar 파일 복사하여 배포하기
# EC2 인스턴스에 접속해 아래 명령어 실행
$ sudo apt-get update
# 프로젝트 jdk버전에 맞게 설치
$ sudo apt-get install openjdk-11-jdk
# 프로젝트 폴더에서 생성된 .jar 빌드 파일 복사
$ scp ./build/libs/ToDoList-0.0.1-SNAPSHOT.jar {호스트 이름}:{복사하고자하는 폴더 경로} #ex) ubuntu@{퍼블릭IP or DNS}:/home/ubuntu
12. EC2 인스턴스에서 .jar 파일 실행
# EC2 인스턴스
$ java -jar {.jar파일}
# profile 설정
$ java -jar {.jar파일} --spring.profiles.active={profile명}
# ex) java -jar ToDoList-0.0.1-SNAPSHOT.jar --spring.profiles.active=aws
# 무중단 배포 하고 싶은 경우
$ nohup java -jar ToDoList-0.0.1-SNAPSHOT.jar &
# => nohup.out에 log 기록
참고)
AWS RDS(mySql) 프리티어 생성하기
AWS 프리티어 뽕 뽑으려면 DB까지,,,💫
velog.io
https://bcp0109.tistory.com/357
AWS 2편: RDS 생성 후 EC2 와 연동
Overview 지난 포스팅에서는 AWS 에서 EC2 인스턴스를 생성하고 Spring Boot 서버를 띄워 외부에서 요청하는 것까지 해봤습니다. 이번에는 데이터베이스 연동을 위해 RDS 인스턴스를 생성하고 이전에 만
bcp0109.tistory.com
'Project' 카테고리의 다른 글
[TODO-CHECKER] 프로젝트 초기 세팅 (0) | 2023.04.25 |
---|---|
[Toy Project] Spring Boot로 TodoList 구현 - 1차 회고 (0) | 2023.04.19 |
[MRS] 영화 추천 서비스 - 회고 (0) | 2023.04.18 |
AWS EC2 + Spring Boot + Nginx HTTPS 설정하기(feat.letsencrypt 활용) (0) | 2023.04.11 |
[AWS] Spring boot project AWS EC2 배포 (1) (0) | 2023.04.06 |