Node.js 설치와 백엔드 애플리케이션 실행
Ubuntu 홈서버 구축기· 11 / 15
- 1 — 홈서버 구축 과정 정리
- 2 — 운영체제 선택과 설치
- 3 — Rufus로 Ubuntu USB 부팅 디스크 만들기
- 4 — Windows 디스크 파티셔닝과 Ubuntu 설치
- 5 — SSH 원격 접속 설정
- 6 — 방화벽 설정
- 7 — Cloudflare DNS 설정
- 8 — Nginx 설치와 리버스 프록시
- 9 — Nginx SSL/TLS 발급과 자동 갱신
- 10 — MySQL 설치와 설정
- 11 — Node.js 설치와 백엔드 애플리케이션 실행
- 12 — DHCP Reservation으로 내부 IP 고정
- 13 — 포트 포워딩
- 14 — 동적 DNS(DDNS) 개념과 테스트
- 15 — ddclient으로 동적 DNS(DDNS) 자동화
서버에서 실행하고자 하는 백엔드 애플리케이션는 이전에 개발한 Nest.js 웹프레임워크 기반의 백엔드 애플리케이션이므로 Node.js를 설치한 후 실행할 예정이다.
실행 환경 설치 및 애플리케이션 실행
Node.js 설치부터 pm2를 이용한 백엔드 애플리케이션 실행까지의 과정을 정리한다.
Node.js 설치
NVM을 이용해 버전을 관리하며 Node.js를 설치한다.
-
버전 관리자 설치
Node.js 버전 관리자인 NVM를 이용해 설치한다. NVM의 버전은 설치 시점의 최신 버전에 맞춰 조정한다.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash -
Node.js 설치
Node.js 버전은 백엔드 개발 환경과 동일한 버전으로 설치했다.
nvm install 20.11.1 -
Node.js 버전 확인
NVM의 관리 목록 조회를 통해 현재 관리 중인 Node.js 버전 목록과 현재 사용 중인 버전을 확인할 수 있다.
nvm list-> v20.11.1 default -> 20.11.1 (-> v20.11.1) iojs -> N/A (default) unstable -> N/A (default) node -> stable (-> v20.11.1) (default) stable -> 20.11 (-> v20.11.1) (default)
백엔드 애플리케이션 실행
Node.js 설치를 마쳤다면 이전에 개발해둔 백엔드 애플리케이션을 실행한다.
-
애플리케이션 실행 준비
# 패키지 의존성 설치 npm i # DB 마이그레이션 적용 npx prisma migrate deploy # 프로세스 관리자 설치 npm install -g pm2 -
애플리케이션 실행
pm2를 이용해 백엔드 애플리케이션를 실행해두었다.
pm2 start npm -- run start --name back:prod
위 백엔드 애플리케이션은 3000번 포트로 실행되며, Nginx의 리버스 프록시를 통해 요청이 전달된다.