설치&설정 관련
-
pupperteer를 이용한 화면 캡처 기능 개발설치&설정 관련 2019. 5. 26. 15:12
pupperteer를 이용한 화면 캡처 기능 개발 이번에 개발하는 기능중에 화면을 캡처해서 다운로드를 제공해야 하는 기능이 있다. 처음 시도한 방법은 html2canvas을 이용한 방법 이었는데... 실패 했다. 화면에 보여주는 부분은 잘 캡쳐가 되지만, 스크롤에 숨겨진 부분이 캡쳐가 되지 않았다. 하루를 날리고, 다음으로 시도한 방법은 pupperteer를 이용해서 요청이 오면 내부에서 새로운 페이지를 띄우고 해당 페이지를 로딩해서 캡쳐 하는 방식이다. 만든 코드는 다음과 같다. router.post('/capture', async (req, res, next) => { const file_name = `${shortid.generate()}.png`; const browser = awa..
-
MongoDB aggregate 사용해보기설치&설정 관련 2019. 5. 26. 15:11
MongoDB aggregate 사용 다음과 같은 형식의 여러 ROW의 데이터를 하나의 데이터로 표현 하고 싶었다. # DATA { "_id" : ObjectId("5c864b1e1cd4038eed5b5633"), "link_tag" : [ "#핫앤쿨", "#마스크팩", "#홈케어", "#리뉴메디", "#젊줌마", "#예뻐지는시간" ], "name" : "홈케어", "text" : "젊어지는시간\n. .\n\n#핫앤쿨 #마스크팩 #홈케어\n#리뉴메디 #젊줌마 #예뻐지는시간", "owner" : "10961953345", "shortcode" : "Bu3eX2iHIFG", "display_url" : "https://scontent-icn1-1.cdninstagram.com/vp/c330b55401b96a..
-
puppeteer를 Ubuntu에 설치하고 기동하기설치&설정 관련 2019. 5. 26. 15:10
puppeteer를 설치하고 구동하기 설치는 아주 간단하다. npm 을 이용해서 설치 하면 바로 되는데, 문제는 설치후 기동하면 오류가 난다. # 설치 npm install --save puppeteer # 실행 node app.js # error 발생 에러 메시지에서는 puppeteer troubleshooting를 보라고 하지만, 내게 도움되는 내역이 없었다. 구글의 도움을 받아 찾은 puppeteer not working on Ubuntu 16.04 but works on 14.04에서 다음 라이브러리를 설치하라는 메시지를 확인하였다. sudo apt-get install libpangocairo-1.0-0 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 ..
-
crt, key 인증서 파일 pem으로 변환설치&설정 관련 2019. 5. 26. 15:08
cert, key 파일을 pem 파일로 변환 하기 nginx에서 사용하던 인증서를 nodejs에서 바로 사용을 하기 위해 pem 파일 형식으로 변경 해야하는 일이 생겨서 검색을 해보았다. 파일 형석의 변환은 다음과 같이 쉽게 할 수 있다. # key 변경 openssl rsa -in server.key -text > private.pem # crt 변경 openssl x509 -inform PEM -in server.crt > public.pem추가 팁] nodejs 에서 https 설정 nodejs에서 https 사용을 위해서는 https 모듈을 추가로 설치 해야 한다. 이후 소스내에 다음과 같이 인증서를 options을 추가 하면 된다. const https = require('https..
-
MongoDB backup & restore설치&설정 관련/MariaDB & Mysql 2019. 5. 26. 14:50
MongoDB backup & restore 간단하게 몽고 디비 백업과 복구를 해보겠다. 먼저 백업 명령은 다음과 같다 # 결과로 디렉터리가 생성 된다. # 특정 collection 명이나 DB 명을 Backup 할 수 있다. $> mongodump --collection words --db TEST --out ./다음은 복원 하는 방법이다. # 특정 컬렉션만 복원 할 수 있으며 --drop 옵션을 추가 하면 삭제하고 복원 한다. $> mongorestore --host 172.30.10.1 --port 27017 --db TEST --collection words --username tester --password 'password' ./TEST/words.bson --drop가끔씩 쓸일..
-
AWS LAMBDA를 이용해서 개발하다설치&설정 관련 2019. 5. 26. 14:46
AWS LAMBDA 를 개발시 알면 좋은 팁 Lambda를 API Gateway를 통해서 호출 하도록 설정 할때 매핑 템플릿 을 사용하면 IP 등의 정보를 얻을 수 있다. Lambda에서 RDS에 접근하기 위해서는 VPC를 설정해야 한다. VPC가 설정된 Lambda는 외부 인터넷에 접근 할 수 없다. VPC가 설정된 Lambda는 내부 private IP만 접근 할 수 있다. 다시 사용할 일이 올지는 모르겠지만, 재미있었다. 신기술은 늘 어렵다. 근데 써보고 나면 별거 없다. 참고 자료 API Gateway 매핑 템플릿 참조 Running AWS Lambda Functions in a VPC and Accessing RDS
-
80 port에 대하여 Root가 아닌 다른 계정으로 서비스 하기설치&설정 관련 2019. 2. 6. 16:26
80 port에 대하여 Root가 아닌 다른 계정으로 서비스 하기보안 취약점으로 인해 서비스에 대한 기동을 root가 아닌 다른 계정으로 하라는 지침이 내려왔다.하지만 1024 포트 이하에 대한 서비스 권한은 root만 가지고 있다. 기존에 했던 방법은 계정을 생성하고 root와 같은 그룹으로 묶어서 처리한 기억이 있다.이번에 찾은 방법은 authbind라는 라이브러리를 이용 하는 방법이다.예제는 pm2를 이용하였는데, 아마 생각은 다른 프로그램 역시 동작 할것이다.우선 다음 명령어를 이용하여 authbind를 설치 하고 %user% 는 사용하려는 계정으로 바꿔서 진행하면 된다.$> sudo apt-get install authbind $> sudo touch /etc/authbind/byport/80 ..
-
Nginx private 인증서 적용하기설치&설정 관련 2019. 2. 6. 16:24
Nginx private 인증서 적용하기OPENSSL 기반으로 인증서요청서 생성하기$> openssl req -new -newkey rsa:2048 -nodes -keyout .key -out .csr ... 정보 입력 or 걍 엔터 인증서 생성 하기$> openssl x509 -req -days 365 -in .csr -signkey .key -out .crt ... 결과로 인증서( 인증서이름.crt )가 생성된다. 비밀번호 제거작업 필수는 아니지만, Nginx를 재기동 할 경우 비밀번호를 요청 받는다. 따라서 다음과 같이 개인키를 재생성 한다.$> cp .key .key.secure $> openssl rsa -in .key.secure -out .key Nginx SSL 적용$> vi /etc/ng..