먼저, 가상의 컴퓨터(Instance)가 Ubuntu 이므로 최신화를 가장 먼저 시켜야 한다.
sudo apt update
그리고 Node를 설치해야 한다. 그러나 Node를 설치할 수 있는 nvm을 먼저 설치 해야한다.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
입력 후, nvm이 설치가 잘 되었는지 확인한다.
nvm --version
nvm 버전 정보가 나오면 설치가 잘 되었다는 것!
그리고 nvm을 이용하여 node를 설치
nvm install node
node설치가 끝나면 npm 명령어가 정상적으로 입력되지 않는 상황을 방지하기 위해서 터미널에
sudo apt install npm
을 입력해서 npm 설치를 진행한다. 위 과정을 성공적으로 마쳤다면 node.js 기반 서버를 실행하는 필요한 개발 환경 구축이 완료되었다.
스프린트 코드가 저장된 깃허브 레포지토리 주소를 복사하고, git clone
명령어를 통해 EC2 인스턴스에 스프린트 코드를 클론 받는다.
git clone 'github repo 주소'
클론을 받고 난 후 'ls -l' 명령어로 받은 폴더 확인을 한 후 폴더로 이동한다.
이동하고 나서 필요한 브랜치로 이동한다.
git checkout 브랜치명
그리고 .gitignore에 있는 .env파일을 새로 만들어서 환경변수 설정을 한다.
touch .env
nano .env
환경변수를 설정하고 실행한다.
npm start
Ubuntu에서는 1024번 포트 아래번호는 sudo
를 붙여서 실행해야 한다. 그래서
sudo npm start
를 했는데, 처음 보는 오류가 나타났다.
sudo: npm: command not found
그대로 긁어서 구글링을 했다. 여기저기 사이트를 봤던 결과
sudo apt-get install npm
을 하라고 하니 엄청난 설치파일들이 다시 설치가 되는 것을 보았다.
그리고 다시 실행을 했다. 그런데 또 다른 오류가 나타났다.
중간 쯤에 nodemon index.js
가 눈에 바로 보였다. 그래서
nano package.json
을 해서
"start": "nodemon index.js"
를 "start": "node index.js" 로 바꾸어 주었다.
그리고 왜 EC2에서는 nodemon이 실행이 되지 않는지는 구글링을 통해 에러로그에 작성하였다.
이렇게 하면 이제 코드 내적으로는 세팅이 끝이 났다. 그러나 BUT, 아직 실행하면 오류가 난다. 그 이유는 바로 보안그룹설정
때문인데 다음 포스팅에 자세히 블로깅을 할 예정!