전체 글

·Server/CLOUD
들어가기 전에 이 포스팅은 SpringBoot 어플리케이션을 Github Action을 통해 Beanstalk에 배포하여 생성된 EC2의 timezone 설정에 대한 글입니다. 따라서, EC2 서버에 직접 접근하여 timezone 변경하는 것이 아닌, SpringBoot 경로 내 존재하는 .ebextensions 디렉토리 내 설정을 추가하는 방식으로 EC2의 timezone을 설정합니다. 따라서, 이 포스팅은 SpringBoot를 통해 Elastic Beanstalk에 배포하여 .ebextensions 설정에 대해 안다고 가정하고 진행합니다. 왜 EC2 서버에서 직접 timezone 설정을 하지 않고 .ebextensions를 이용할까? EC2 서버에서 직접 timezone 설정을 하지 않는 이유는 간단..
·Server/CLOUD
들어가기 전에처음 RDS와 EC2를 사용할 때에 따로 설정하지 않으면 timezone은 UTC로 들어가게 됩니다. 현재 살고 있는 곳과 동일한 시간대여야 추후 crontab 등을 이용하거나, 로그가 남은 시간이 정확히 언제인지 로컬 타임으로 확인할 수 있도록 timezone을 Asia/Seoul로 변경해보고자 합니다. 이번 포스팅에서는 RDS의 timezone 설정하는 법을 알아보겠습니다. 더불어, RDS에 데이터를 넣는 주체인 SpringBoot에 대한 timezone 설정까지 알아보겠습니다.RDS TIMEZONE 설정 하기 - DB 파라미터 그룹 변경RDS를 생성할 때 따로 설정해주지 않으면 RDS의 DB 파라미터 그룹은 default 그룹으로 생성됩니다. default 그룹은 파라미터 값 수정이 안..
·Server/CLOUD
들어가기 전에Elastic Beanstalk을 통해 Springboot CI를 진행하기 위해 Elastic Beanstalk 기본 설정을 진행하였습니다. 다음 포스팅에서는 Github Action을 통해 Elastic Beanstalk에 실 어플리케이션을 배포해볼 것입니다.다음 포스팅[AWS, Github Action] Elastic Beanstalk에 SpringBoot 배포하기(2) - IAM 인증키 Github Action에서 사용하여 배포[AWS, Github Action] Elastic Beanstalk에 SpringBoot 배포하기(3) - EB에 RDS 사용하여 환경속성 통해 application.yml 주입받기Elastic Beanstalk 어플리케이션 및 환경 기본 세팅하기먼저, AWS ..
들어가기 전에 Github Action을 통해 CI를 적용한 Springboot 환경은 다음과 같습니다. 만약, maven을 사용하신다면 하기 내용을 통해 적용이 어려울 수 있는 점 참고 부탁드립니다. plugins { id 'org.springframework.boot' version '2.4.10' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' } group = 'jpabook' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' Github Action을 통해 CI(Continuous Integration) 적용하기 먼저 적용하고자 하는 github repository에 접..
CRLF will be replaced by LF 에러 해결법 아래와 같이 git add .명령어를 입력했을 때 CRLF will be replaced by LF 에러가 발생하는 경우가 있습니다. 이 에러는 맥 또는 리눅스를 쓰는 개발자와 윈도우를 쓰는 개발자가 함께 협업하여 발생하는 Whitespace 에러입니다. 맥 또는 리눅스 시스템의 경우 한 줄의 끝이 LF(Line Feed)인 반면, 윈도우는 한 줄의 끝이 CR(Carriage Return)과 LF(Line Feed)인 CRLF로 이루어지기 때문입니다. 위 에러는 하기와 같이 해결이 가능합니다. Windows의 경우 Windows라면, LF will be replaced by CRLF ... 라는 에러로 발생했을 것이기 때문에 하기와 같이 gi..
·FRAMEWORK/Spring
들어가기 전에 구글링을 통해 소셜 로그인 구현을 찾아보면, 하기 라이브러리들을 통한 구현이 많습니다. implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-oauth2-client' 이 경우, 주로 back-end(JAVA)에서 소셜 로그인을 A to Z까지 진행하는 경우가 많습니다. 만약, 필요한 것이 back-end에서 로그인을 전부 하는 것이라면 하기 글이 도움되지 않을 수 있습니다. 해당 부분 고려하시어 보시면 좋을 것 같습니다😄 이번 프로젝트의 경우, front-end에서 로그인을 진행하고, 로그인 이후 얻은 acc..
들어가기 전에하기 글은 구글 GCP의 계정이 존재하고, 프로젝트 내 사용자 인증 정보를 생성하여 구글의 Oauth 사용을 위한 클라이언트 ID를 이미 발급 받은 상태라고 가정하고 진행합니다. 만약, Google의 Oauth 사용을 위한 클라이언트 ID를 생성하지 않은 상태라면 글 하단의 Oauth2 로그인 구현 방법을 먼저 살펴보시기 바랍니다.403 forbidden이란?403 forbidden은 클라이언트 오류 상태 응답 코드로 서버에 요청은 전달되었지만, 권한 때문에 거절되었다는 것을 의미합니다. Google API를 통한 Oauth2 로그인 구현 시 403 forbidden 에러 해결법먼저, GCP 콘솔에 접속하여 하기와 같이 검색창을 통해 API 및 서비스 페이지로 넘어갑니다. Google Clo..
·FRAMEWORK/Spring
이슈 원인 @ConfigurationProperties를 사용하여 yaml의 특정 설정값들을 읽으려했고, 이때 하기와 같이 Spring Boot Configuration Annotation Processor not configured 에러가 발생했습니다. 해당 이슈를 해결하고자 build.gradle의 dependencies에 하기와 같이 설정을 한 후, gradle clean 및 build를 진행했습니다. dependencies { ... annotationProcessor "org.springframework.boot:spring-boot-configuration-processor" // Use ConfigurationProperties } build가 되었을 때, 위와 같은 에러는 더이상 발생하지 ..
EARTH_ROOPRETELCHAM
ROOPRETELCHAM