Node.js
    • PDF

    Node.js

    • PDF

    Article Summary

    Classic 환경에서 이용 가능합니다.

    Node.js는 Linux를 운영 체제로 사용하면서 Node.js를 활용한 Javascript 개발 스택 서비스 플랫폼입니다. 안정성이 우수한 네이버 클라우드 플랫폼의 Compute 인프라 서비스에 자동으로 구성되며, 몇 단계의 설정을 통해 즉시 서비스를 시작할 수 있습니다.

    Node.js 사용의 이점은 다음과 같습니다.

    • 네이버 클라우드 플랫폼의 인프라 서비스를 활용하여 안정적으로 Node.js 개발 스택 서비스를 이용할 수 있습니다.
    • 서버 이미지와 스펙을 선택하여 Node.js 서버를 자동으로 설치하고 이용할 수 있습니다.
    참고

    네이버 클라우드 플랫폼의 Node.js에서 사용되는 소프트웨어에 대한 자세한 내용은 다음 웹 사이트에서 확인해 주십시오.

    서버 생성 및 접속

    서버 생성 및 접속 방법은 네이버 클라우드 플랫폼의 일반 서버 생성 방법과 동일합니다. 자세한 절차 및 참고할 만한 가이드는 다음과 같습니다.

    절차설명
    1. ACG 설정
    • 참고 가이드: ACG
    • 다음 포트 설정 필요
      • 터미널 접속을 위한 TCP 22 포트
      • 웹 서버 이용을 위한 TCP 3000 포트(변경 가능)
    2. 서버 생성
    • 참고 가이드: 서버 생성
    • 이미지 타입 Application, Application 이미지 타입 Node.js
    3. 공인 IP 설정
    4. 포트 포워딩 설정
    5. 관리자 비밀번호 확인
    6. 서버 접속
    참고
    • 서버에 접속하여 로그인한 후에는 root 계정의 비밀번호를 기억할 수 있는 다른 비밀번호로 변경하기를 권장합니다. passwd root 명령어를 입력하여 새로운 비밀번호를 설정해 주십시오.
    • 공인 IP 주소와 ACG에 문제가 없어도 Node.js Web 서비스에 접속되지 않는다면 웹 서버 프로세스가 정지된 것일 수 있습니다. 터미널 프로그램에서 재시작 명령어(systemctl start httpd)를 실행하여 프로세스를 다시 시작해 주십시오.

    서버 사용

    서버가 생성되면 자동으로 Node.js Development Package가 설치되어 쉽게 사용할 수 있습니다.
    제공되는 오픈소스는 NVM(Node Version Manager)이며, Node.js 파일의 설치 디렉터리는 /root/nodejs, /root/.nvm입니다.

    서버에 접속한 상태에서 다음 명령어를 사용할 수 있습니다.

    • 다운로드 가능한 nvm 원격 버전 확인: nvm list-remote
    • 원하는 nvm 버전 설치: nvm install v(버전)
    • 현재 활성화된 nvm 버전 확인: nvm current
    • 설치된 nvm 버전 확인: nvm ls
    • nvm alias 설정: nvm alias default v(버전)
    • 사용할 nvm 버전 변경(여러 버전을 설치 시): nvm use v(버전)
    • npm을 이용해 Express 모듈 설치: npm install -p --save express
    • npm을 이용해 PM2 모듈 설치: npm install -g --save pm2
    • nvm 도움말 확인: nvm --help

    Express 모듈 활용 예제

    Express 모듈을 생성하여 웹 서버에 활용하는 예제를 설명합니다.

    1. 서버에 접속한 후 vi hello.js 명령어를 입력해 편집기를 열어 주십시오.
    2. [I] 키를 눌러 입력 모드를 켠 후 다음과 같이 파일 속성을 입력해 주십시오.
      var express = require('express');
      var app = express();
      
      app.get('/', function (req, res) {
         res.send('Hello Express Server!');
      });
      
      app.listen(3000, function () {
         console.log('Express App Server : Listening on port 3000!');
      });
      
    3. [Esc] 키를 눌러 입력 모드를 끈 후 :wq를 입력해 vi 편집기를 종료해 주십시오.
      참고

      Node 버전을 변경했다면 NPM으로 Express와 PM2 모듈을 설치해야 합니다. 다음 명령어를 사용해 주십시오.

      • 현재 활성화된 nvm 버전 확인: nvm current
      • 사용할 nvm 버전 설정: nvm use v(버전)
      • Express 모듈 설치: npm install -p --save express
      • PM2 모듈 설치: npm install -g --save pm2
    4. 생성된 Express 모듈 파일을 실행해 주십시오.
      root@ndjs-ub:~# node hello.js
      Express App Server : Listening on port 3000!
      
    5. 브라우저 접속을 위해 TCP 3000 포트를 허용하도록 콘솔에서 ACG를 설정해 주십시오.
      • ACG 설정에 대한 자세한 내용은 ACG를 참고해 주십시오.
    6. 서버 접속된 터미널에서 다음 명령어를 입력해 주십시오.
      • Express 웹 서버 실행 결과를 확인할 수 있습니다.
      curl http://(공인 IP 주소):3000
      ...
      Hello Express Server!
      

    PM2 활용 모니터링

    PM2 모듈을 활용해 Node 애플리케이션을 모니터링할 수 있습니다.
    hello.js 예제 파일을 이용해 PM2 모듈을 실행하는 방법은 다음과 같습니다.

    root@ndjs-ub:~# pm2 start -f hello.js
    ...
    
    [PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
    [PM2] PM2 Successfully daemonized
    [PM2] Starting /root/hello.js in fork_mode (1 instance)
    [PM2] Done.
    ┌─────┬──────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
    │ id  │ name     │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
    ├─────┼──────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
    │ 0   │ hello    │ default     │ N/A     │ fork    │ 5085     │ 0s     │ 0    │ online    │ 0%       │ 27.3mb   │ root     │ disabled │
    └─────┴──────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
    

    이 문서가 도움이 되었습니까?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.