분류 전체보기

    windows 환경에서 flyway cli tool을 사용하는 방법

    이 포스트에서는 windows 로컬 환경을 기준으로 설명드리겠습니다. 1. 먼저, flyway 공식 홈페이지에서 flyway cli tool을 다운로드 합니다. 2. 원하는 위치에서 다운받은 압축파일을 해제합니다. 3.설치는 모두 끝났습니다. 이제 flyway 명령어를 global하게 쓰기 위해서 시스템 환경변수 설정을 합니다. flyway cli 폴더의 경로를 복사해서 시스템속성 - 환경변수 - 시스템 변수 - path에 추가합니다. 4. cmd 창을 열고, flyway라고 입력했을 때, 아래와 같은 flyway 명령어 안내 문구가 나온다면, 환경변수에 정상적으로 등록된 것입니다. 5. 이제 설정파일에서 flyway와 데이터베이스를 연동할 차례입니다. 아래와 같은 경로에 conf 파일이 하나 있습니다...

    IntelliJ에서 한글 사용 시, 블럭처리 되는 현상 해결(Non-ASCII Characters alert 해제)

    인텔리제이 또는 그와 유사한 JetBrains IDE에서는 ASCII 문자가 아닌 문자에 대해서 마치 드래그 선택한 것 마냥 블록 처리를 해서 보여준다. 아마 초기 세팅값이 이런 것 같다. 보기에 불편하니 바꿔주도록 하자. Ctrl + Shift + S 또는 File - Settings 로 설정 창을 연 뒤, Editor > Inspections 에서 아래 사진과 같이 Non-ASCII characters 에 체크를 해제 시켜준다. 참고 : https://www.lesstif.com/php-and-laravel/phpstorm-intellij-non-ascii-characters-in-an-identifier-91947359.html PHPStorm 이나 IntelliJ 에서 한글 변수명 사용시 "Non..

    ES6) 화살표 함수에서 매개변수가 하나일 때에도 괄호를 생략할 수 없는 경우

    화살표 함수 문법에서, 매개변수가 하나인 경우에는 매개변수를 묶는 소괄호를 생략할 수 있다. let double = n => n * 2; 이렇게 말이다. 하지만, 전달하는 매개변수를 구조 분해 할당으로 받는 경우에는, 인수가 하나여도 괄호를 생략하면 오류가 발생한다! 가령, 객체의 너비를 두배로 계산해주는 doubleV2 함수를 정의한다고 가정해보자. doubleV2 함수는 넘겨받은 객체의 너비값(width 프로퍼티)만을 구조 분해 할당으로 분해하여 인수로 사용한다. 이 경우, 파라미터가 하나여도, 매개변수에 괄호를 생략할 수 없다. const double = {width} => width * 2; (X) const double = ({width}) => width * 2; (O) 한 단계 더 응용해보자..

    WebStorm에서 단축키로 Prettier formatting 하기(feat. ESLint 비활성화)

    nest cli로 nest.js 프로젝트를 init하면, eslint와 prettier가 함께 설정된다. 잘은 모르지만, 아마 react나 vue 같은 프론트 웹프레임워크도 마찬가지일 것이다. lint나 formatting 규격을 정하는 것은 정말 중요한 일이지만, 자바스크립트 기반 프레임워크를 처음 접하는 초심자 입장에서 eslint니, prettier니 하는 것들은 혼란만 가중시키는 요소라고 생각된다. 두 줄 요약하자면, ESLint는 이름에서도 알 수 있다 시피 그냥 Lint, 즉 정적분석 도구이다. 그리고 prettier는 포맷터, 즉 코드 정렬을 알잘딱깔센 정렬해주는 도구이다. 초보 입장에서, 초기 설정의 eslint는 너무 깐깐해서 온갖 곳에 빨간 줄을 다 그어버리기 때문에, 더욱 혼란만 가중..

    AWS ElasticBeanstalk 콘솔에서 RDS 연결이 되지 않는 문제 해결

    증상 ElasticBeanstalk 환경을 생성하면서, RDS를 사용하기 위해 ebs 콘솔에서 RDS를 생성(연결)하려고 하면, 위와 같은 에러가 발생한다.에러 메세지는 이렇다. Configuration validation exception: Invalid option value: '5.6' (Namespace: 'aws:rds:dbinstance', OptionName: 'DBEngineVersion'): Engine Version 5.6 not supported for mysql db 원인 에러 메세지의 내용 그대로이다. Mysql 5.6버전을 더 이상 supported 하지 않아서 그렇다. 그런데 조금 황당하다.아마도 ElasticBeanstalk 웹 콘솔에서 rds 설정 기본값이 mysql 5.6..

    [Ngnix] connect() failed (111: Connection refused) while connecting to upstream 에러 해결

    스프링부트를 github action과 AWS CodeDeploy를 이용하여 무중단 배포 환경을 구성하는 도중, 아래와 같은 nginx 에러를 만났다. 상세한 에러 메세지는 다음과 같다. [error] 15761#15761: *47 connect() failed (111: Connection refused) while connecting to upstream, cl"http://127.0.0.1:8080/profile", host: "localhost" 원인 upstream(http://127.0.0.1:8080/profile)에%EC%97%90) 접근할 수 없어서 발생하는 오류. 해당 포트번호가 닫혀있는데, 접근하려니 연결에 실패하는 것이다. 해당 포트번호로 부트가 떠있지 않은 상태인데, health ..

    Windows 환경에서 Github pages와 jekyll 를 활용해 나만의 블로그 웹호스팅하기

    개발 공부를 하면서, 그날 배운 내용이나 깨달은 점을 매번 블로그의 포스트로 남기면 좋겠지만, 시간적으로나 심리적으로 약간 부담스러울 때가 있다. 이럴 때 그냥 내 머릿속에 Input만 하고 넘어가자니, 쉽게 까먹을 것 같아서, OUTPUT을 하며 학습할 필요성을 느꼈다. 이에 가장 알맞은 방법이 TIL(Today I Learned) 작성이라는 결론에 도달했다. 여러가지를 고려해서 TIL을 작성할 목적으로 티스토리보다는 깃허브 블로그가 더 적합하다고 생각되어 GithubPages와 jekyll을 활용하여 나만의 블로그를 호스팅 하기로 결정했다. 그럼 Windows 환경에서 Github pages와 jekyll 를 활용해 나만의 블로그를 호스팅하는 방법을 알아보자. 순서는 이렇다. 1.github page..

    GitHub push에도 travis-ci 가 동작되지 않을 때.

    처음 travis-ci와 github을 연동하고 수동배포 -> 자동배포 -> 무중단 배포를 연습하던 도중, 갑자기 travis-ci와 연동된 github 레포지토리의 push 이벤트에도 travis-ci가 먹통이 되었다. 애초에 실행되지도 않으니 에러 로그도 뭐도 없고 한참을 헤메다가 해결책을 찾았다. 이유는 간단한다. github의 webhook 이 설정되지 않아서 그렇다. 레포지토리 설정에서 아래 사진과 같이 webhook을 설정하면 된다. Payload URL : webhook POST request를 받을 서버 URL이다. https://notify.travis-ci.com 을 입력해준다. Content type : URL 입력시 자동으로 application/x-www-form-urlencode..

    Amzone Linux AMI 2 인스턴스의 Hostname 변경하기

    Amazone Linux AMI 1의 경우, /etc/sysconfig/network 파일의 HOSTNAME 부분을 수정하면 되지만, Amazone Linux AMI 2의 경우는 그 방법이 바뀌었다. 2022년 현재 더 이상 신규로 Amazone Linux AMI 1 인스턴스를 생성할 수 없으므로, 여기서는 AMI2의 경우의 HOSTNAME 수정법만 정리하겠다. 방법은 간단하다. sudo hostnamectl set-hostname 원하는 호스트네임.localdomain 명령어로 호스트네임을 설정하면 끝이다. hostname으로 변경된 호스트네임을 확인 할 수 있다. sudo reboot 으로 재시작하여 변경된 호스트네임이 반영된 것을 확인하자. 성공적으로 반영되었지만, 여기서 한가지 작업을 추가적으로 ..

    Springboot와 OAuth2.0 사용한 네이버 로그인 연동시 yaml parsing error 해결

    이동욱님의 스프링부트와 AWS로 혼자 구현하는 웹서비스를 보면서 네아로 소셜로그인 연동을 하던 중, 책의 예제인 .properties를 .yml파일로 바꿔서 적용 시키고 있었는데, 메인 어플리케이션 구동시, 자꾸만 yaml파일 parsing error를 내뱉었다. 작성중인 yaml 파일은 아래와 같다. 구글과 달리, 네이버는 Spring Security를 공식적으로 지원하지 않아서, Common-OAuth2Provider에서 알아서 해주던 설정을 따로 추가해줘야 한다. 위와 같은 에러 메세지를 뿜고 있다. yaml.snakeyaml.parser.ParserException: while parsing a block mapping작성된 구문에 오류가 있어, yaml을 파싱하는 과정에서 오류가 생겼다는 건데...