개발툴 팁

express + vue 서버관리 with pm2

nayha 2019. 4. 17. 23:11

pm2 (백그라운드로 서버 로딩)

설치는  gogo >> https://pm2.io/doc/en/runtime/guide/installation/

 

Installation | Guide | PM2 Documentation

 

pm2.io

에코 시스템 ( 한번 실행으로 서버 올리고 관리 !!! )

pm2 init 

-- 에코 설정 파일 참고

module.exports = {
  apps : [{
    name: 'jisou',
    script: './backEnd/bin/www',

    // Options reference: https://pm2.io/doc/en/runtime/reference/ecosystem-file/
    args: 'one two',
    instances: 1,
    autorestart: true,
    watch: false,
    max_memory_restart: '1G',
    env: {
      NODE_ENV: 'development',
      PORT : 3000
    },
    env_pr: {
      NODE_ENV: 'production',
      PORT:80
    }
  }],
  
};  

참조 >> https://pm2.io/doc/en/runtime/guide/ecosystem-file/

 

Ecosystem File | Guide | PM2 Documentation

 

pm2.io

pm2 log 관리는 pm2 안에서 설치 

pm2 install pm2-logrotate

참조 >> https://pm2.io/doc/en/runtime/guide/log-management/

 

Log Management | Guide | PM2 Documentation

 

pm2.io

30일에 한번씩 로그 삭제 하도록 설정

pm2 set pm2-logrotate:retain  30

참조 >> https://github.com/keymetrics/pm2-logrotate

 

keymetrics/pm2-logrotate

Automatically rotate all applications logs managed by PM2 - keymetrics/pm2-logrotate

github.com

 

참고로 집 서버가 윈도우10  

그냥 윈도우 커맨드 창에서 모두 테스트 완료 !!!

꼭 리눅스로 안해도 됨

pm2 log / pm2 monit/ pm2 status 

현재 노드 서버 체크 가능

으 글이 길어지네 길어지면 잘 안보는데 ㅠ_ㅠ

이것저것 셋팅후 

백엔드 / 프론트 동시 구동하게 설정

-- 제일 상단 package.json
{
  "name": "프로젝트명",
  "version": "0.0.1",
  "scripts": {
    "start": "node ./bin/www",
    "pm2": "cd front && npm install && npm run build && cd ../backEnd && npm install && cd .. && pm2 start --env pr"
  },
  "dependencies": {},
}

npm run pm2 !!

아 한방실행 너무 편함

상단 프로젝트 폴더에서 >> 프론트 이동 >> 프론트 의존성 설치 >> 빌드 >> 백엔드 이동 >> 백엔드 의존성 설치

>> 상단 이동 >> pm2 에코시스템 (개발/운영) 서버 로딩 (^_^)b

 

실행 후 화면 

반응형