본문 바로가기
매일코딩/리눅스-우분투

ubuntu16.04 에서 pm2 와 nginx로 node js 서비스 하기

by 인생여희 2017. 7. 20.
반응형


ubuntu16.04에서 pm2 와 nginx로 node js 서비스 하기



reverse proxy 에 대한 개념을 조금 알고 시작하면 좋을듯!



#시작하기 전에 

http://abc1211.tistory.com/283

지난번 포스팅에서 node js와 express 설치 하는 방법 보실수 있어요.



#express 명령어로 폴더를 하나 만든다

express nodeApp


#만든 폴더로 가서 npm install 후 node 서버 실행

cd nodeApp

npm install

node ./bin/www


#서버가 작동된 것을 확인하자   





#PM2 와 NGINX 설치(구글링으로 한번 찾아보자!)

(PM2는 NODE 서버를 관리 지속적으로 서비스 해주는 모듈이고,

NGINX는 NODE APP이 외부에서도 접속되도록 하는 서버 ..틀렸다면 지적 부탁해요.

npm install pm2 -g


apt-get install nginx


#설치 후 PM2로 NODE 어플실행

cd nodeApp/

pm2 start bin/www



#여기서 부터 중요

nginx 문서가 있는 경로 ==> /etc/nginx/sites-available/default

default 라는 파일안에 내용을 다 지우고 아래 내용을 복사 붙여넣기 후 본인의 도메인과 ip , 포트에 맞게 적어주자 빨간색 부분만!

gedit /etc/nginx/sites-available/default


server {
    listen 80;

    server_name  www.sample.com 본인 도메인 주소;

    location / {
        proxy_pass http://본인ip주소:node 포트 번호;
   
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}


#nginx 재시작!

sudo /etc/init.d/nginx restart


#터미널에 ok라는 표시가 뜨면 성공  !


192.168.111.100 ip로 윈도우와 리눅스에서 접속 성공



#혹시 안되면 80 포트를 열어보자

ufw allow 80

ufw status



#참고사이트

https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-ubuntu-16-04

http://sanghaklee.tistory.com/11

https://cheese10yun.github.io/Node-AWS-Nginx

https://www.nginx.com/resources/admin-guide/reverse-proxy/



반응형

댓글