AWS EC2에 node.js로 개발하기

GOO·2023년 4월 28일
0

1. 개발 개요

O4O(Online for Offline) 교육용 사이트 개발에 aws의 serverless 서비스인 lambda를 javascript언어의 서버측 프레임워크인 node.js를 사용하여 Restful API 서비스 개발을 시도하게 되었다.
lambda에 대한 자료를 수집하고 학습하여 준비를 마치고 실제 서비스를 구현하기 위해 aws 계정에 가입을 하고 lambda 서비스를 테스트를 시작하게 되었다. 그런데 node.js 개발에 꼭 필요한 여러가지 미들웨어나 프레임워크가 원활하게 연동이 되지 않았고(안되는 것은 아닌 것 같은데 복잡하고 찾는 시간이 많이 걸리는 것 같다), 개발을 빠르고 편하게 하기 위해 로컬개발 환경을 구축하고 싶었으나 원하는 만큼의 구축은 힘들것 같아 결국 AWS EC2를 이용해서 개발을 하기로 결정 하였다.

2. 개발 순서

  1. AWS EC2 인스턴스 생성

  2. 도메인을 EC2에 연결하기

  3. EC2에 node.js 최신 버젼 설치
    1) nvm(node version manager)설치

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

    2) nvm 활성화

    . ~/.nvm/nvm.sh

    3) node.js의 가장 최신 릴리즈 버젼 설치

    nvm install --lts

    4) node.js의 자신이 원하는 버젼 설치
    (ex: node.js 버젼 18 설치)

    nvm install 18
  1. 로컬 개발환경 세팅하기
    (vs code node환경, PuTTY, FileZilla)
  2. Deploy to EC2(중요: EC2에 접속해서 개발된 파일을 전송하고 나면 혹시 설치된
    module등이 누락될 수 있으니 터미널에 접속해서 다시 한번 install 해준다 )
    cd 프로젝트 폴더명
     --> 프로젝트 폴더로 이동     
 npm install
 --> 이동한 폴더에 라이브러리 재설치 됨
  1. pm2 설치
    pm2는 프로세서 메지져로 node로 작성한 애플리케이션 서버가 갑자기 중단되는 경우
    재가동 시켜주고 터미널 접속이 끊어져도 서버를 계속해서 구동시켜 주는 module이다.
    pm2를 설치하기 위해서는 EC2 터미널에 접속해서 관리자 권한으로 설치를 해야 한다.

    1) 관리자 권한 획득

    sudo -s

    2) pm2 설치

    npm install -g pm2

    7 EC2에 웹서버(nginx) 설치하고 Vue작업 파일 올리기

0개의 댓글