오늘 한 일
- 게시글 수정/삭제 시, 비밀번호가 틀렸을 때 익셉션 처리 후 응답 바디 변경
- 상태코드: 401
- error: Unauthorized
- postman 으로 API 문서 만들기
- AWS RDS DB 인스턴스 생성
- AWS 배포
- 알고리즘 1문제
배움
AWS 배포 순서
- AWS EC2 서버를 만든다.
- EC2 접속(Mac)
- 최초 접속 시에만 터미널 열고 생성한 키패어의 접근 권한을 바꿔준다.
- SSH로 접속한다.
- ssh -i 키패어경로 ubuntu@aws_ip
- 배포 파일 빌드하기
- 인텔리제이 우측 탭에서 Gradle 선택 후, Tasks > build > build 를 더블 클릭
- 그럼 프로젝트의 build > libs 폴더 안에 .jar로 끝나는 파일이 생기고 빌드를 성공했다.
- 서버에 OpenJDK 설치
- sudo apt-get install openjdk-18-jdk
- Filezilla로 배포 파일 업로드
- Protocol: SFTP
- Host: 서버 아이피
- 스프링부트 동작시키기
- AWS에서 80,8080 포트 열어주기
- 포트 포워딩
- ssh 접속을 끊어도 서버가 계속 돌게 해보자
- nohup java -jar JAR파일명.jar &
- 서버 종료
# 아래 명령어로 미리 pid 값(프로세스 번호)을 본다
ps -ef | grep java
# 아래 명령어로 특정 프로세스를 죽인다
kill -9 [pid값]
nohup java -jar JAR파일명.jar &
SSH
Secure Shell Protocol
다른 컴퓨터에 접속할 때 쓰는 프로그램
H2 데이터베이스
In Memory DB
공부할 때 쓰기 가볍고 관리가 편하다는 장점
그 외의 용도로는 기능 부족 등의 이유로 쓰지 않는게 좋음
./h2.sh
- jdbc url
- h2 폴더 하위 경로에 지정한 파일명으로 된 파일 생성 확인
- 이후 부터는 jdbc:h2:tcp://localhost/~/파일명으로 접속
어려움을 겪은 일
- 배포하는 과정이 생각만큼 순탄치 않았다. 결국해서 기분 좋았다.
회고
- 하루가 금방 지나갔다. 내가 공부하고 싶은 거에 오로지 몰입할 수 있는 지금이 좋다. 너무 길어져서는 안되겠지만!