• 윈도우에서 PuTTY를 통해 AWS 인스턴스 접속하기

    AWS 자체 튜토리얼에 나온대로 인증키쌍을 생성했는데 안되더라구요. 리눅스나 맥에서는 쉘을 통해 간단한 명령어를 통해서 바로 인스턴스에 접속할 수 있지만 윈도우는 그렇지 못합니다. 그래서 우리는 아래와 같은 4단계를 거쳐 윈도우에서 인스턴스에 접근할 수 있게 되는 튜토리얼을 AWS 튜토리얼에서 볼 수 있습니다. AWS에서 SSH키를 다운받는다. PuTTY를 설치한다. PuTTYgen에서 .pem파일을 .ppk로 변환시킨다. PuTTY에서...

  • MySQL 외부에서 접속할 수 있게 세팅하기

    현재 Ubuntu 16.04가 설치된 AWS Lightsail에 MySQL을 설치한 상태이고 로컬에서 인스턴스에 설치된 MySQL로 접근을 하고자 합니다. 외부에서 접근을 허용하기 위해 4가지 일이 필요합니다. AWS 웹페이지에서 방화벽을 열어준다. 인스턴스 내 config 파일을 수정한다. MySQL에 유저권한을 등록한다. MySQL을 재시작한다. 첫번째부터 시작하겠습니다. 우선 인스턴스를 하나 만들고 인스턴스 설정으로 들어갑니다. 상단에 네트워킹 탭이 있습니다....

  • Javascript 배열 가공하기

    본 포스팅은 ES5 문법과 ES6 문법을 병용함을 참고하시길 바랍니다. 또한 의도하지 않은 객체의 변경이 생기는 것을 막기 위해 객체를 참조하는게 아니라 복사해서 불변객체를 만들어줘야 하지만 따로 객체를 복사해서 사용하진 않았음을 확인 부탁드립니다. 데이터베이스에서 나온 정보를 그대로 사용하지 않고 프론트단에서 쓰기 좋게 가공해서 보내줘야하는 경우가 있습니다. 누구보다도 정보가 멋있게 나왔다고 해도...

  • Sequelize 쇼핑몰 상품 옵션 설계 MySQL 쿼리문 바꾸기

    실제 서비스에 들어가는건 아니지만 쇼핑몰 구축하는중 상품은 옵션이 있다는걸 깜빡하고 테이블을 설계했습니다. 작업환경은 MySQL, Sequelize.js를 사용하고 있습니다. 아직까지는 faker로 페이크데이터만 만들었습니다만. 상품 색상과 사이즈를 그냥 생각없이 랜덤한 문자열로만 넣어서 상품 색상과 사이즈는 단일 색상, 단일 사이즈가 되버렸습니다. 실제 서비스같이 만들려면 다채로운 색상과 사이즈가 필요합니다. 뷰로 보내줄때는 배열로 보내주는게 프론트에서 사용하기에...

  • Docker 컨테이너에서 깃 사용하기

    바쁜 일상을 살아가고 강박적으로 깃헙에 커밋을 올리는 병에 걸린 사람이 한 명 있습니다. 항상 늦게까지 약속이 있는 날은 노트북을 챙겨 다닙니다. 하지만 그날따라 약속도 없을 것같고 커밋도 올리기 싫어 늑장부리고 싶어지는 날이었습니다. 갑자기 급약속이 생깁니다. 약속이 금방 끝날 것같아 노트북은 챙기지 않습니다. 자정이 지나서야 집에 들어올 수 있었습니다. 그날 해야할...

  • Node.js와 Python 바인딩 하기

    데이터 관련 라이브러리를 쓰려면 역시 python이 필요합니다. python을 node.js에서 사용하려면 어떡하지 하고 node.js python 바인딩이란 키워드로 구글링하다보니 결국 이거더군요. python-shell이었습니다. 2014년에 만들어졌고 그전부터 생각을 해왔을텐데 선구자시네요. 사용방법은 아주 간단합니다. 구동환경은 python 3.6.5, node.js 8.11.3 입니다. 이 환경과 달라도 충분히 잘 돌아갈겁니다. 아래와 같이 설치를 합니다. yarn add python-shell 다음과 같은...

  • 깃헙 저장소 이슈 페이지를 댓글로 쓰기

    작업환경은 Github Page Blog, Jekyll, Centrarium Theme입니다. 정적페이지에서는 db를 사용할 수 없기때문에 일반적인 방법으로는 댓글을 구현하지 못합니다. 그래서 대다수 깃헙페이지 블로거들이 사용하는 서비스가 disqus인데요. 깔끔하지 못한 ui와 마크다운을 사용하지 못한다는 단점이 있음에도 가장 유명하고 한글문서가 많다는 이유로 저도 사용하게 됐습니다. 아직까진 블로그에 댓글이 없긴 하지만 그래도 깔끔한게 좋잖아요^^ 구글링 중에...

  • Docker 빌드중 에러 메시지가 뜰때 해결하기

    작업환경은 윈도우10, VSC를 이용했습니다. 도커 버전은 다음과 같습니다. $ docker version Client: Docker Engine - Community Version: 18.09.0 API version: 1.39 Go version: go1.10.4 Git commit: 4d60db4 Built: Wed Nov 7 00:47:51 2018 OS/Arch: windows/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 18.09.0 API version: 1.39 (minimum version...

  • 굿바이 2018

    친구1 프로그래밍의 전부는 웹이고 HTML, CSS, jQuery인줄 알았던 나에게 프로그래밍 입문을 도와줬다. jQuery가 Javascript의 라이브러리인지도 몰랐던 시절이 떠오른다. 생활코딩을 보며 나의 개발공부를 시작하게 된 터닝포인트가 바로 친구1이었다. Github: 커밋 확인 용도가 가장 컸다. 아직 협업을 하는 단계가 아니었기 때문에 브랜치를 쳐서 새로운 버전을 만드는 용도까지는 아니었다. 그리고 이때까지는 중요한 기능을...

  • Sequelize 중첩모델 쿼리 작성하기

    부모 밑에 자식이 자식 밑에 손자가 있는 구조로 JSON데이터를 뽑아줄겁니다. 여기서 정렬을 거는 방법을 확인해볼겁니다. 먼저 모델을 정의하고 제약을 걸어줍니다. // 모델 정의 const Parent = sequelize.define('parent', { id: { Sequelize.INTEGER, primaryKey: true }, name: Sequelize.STRING, parent: Sequelize.INTEGER }); const Child = sequelize.define('parent', { id: { Sequelize.INTEGER, primaryKey: true },...