-
Ubuntu 서버에서 Node.js 프로젝트 세팅하기 feat. PM2로 서버 자동화Project/OpenList 2024. 9. 25. 22:58반응형
안녕하세요! 오늘은 Ubuntu 환경에서 Node.js 프로젝트를 세팅하고, PM2를 활용해 서버를 자동화하는 과정을 단계별로 알려드리려고 해요. 🌐🚀
먼저, Node.js를 설치하고, Git을 사용해 프로젝트를 복제한 후, 프로젝트를 백그라운드에서 실행하는 방법을 살펴볼 거예요.
만약 서버 인스턴스를 아직 만들지 않았다면 아래 포스팅을 따라 Ubuntu 서버 인스턴스를 먼저 만들고 접속한 뒤 진행해 주세요.
1. Node.js 설치하기 🛠️
NAT Gateway 연결 확인
Ubuntu 서버에서 ping google.com을 통해 패킷이 잘 오는지 확인하고 인터넷 연결을 확인했어요.
위의 사진처럼 초마다 계속 로그가 찍히면 인터넷 연결이 잘 되어있는거에요.
Node.js 설치의 필요성
프로젝트를 업로드하고 실행하려면 Ubuntu 환경에 Node.js가 필요했지만, 기본 명령어로는 설치가 안 돼서 다른 방법을 찾아야 했어요.
설치 과정
// 1. 시스템 업데이트 sudo apt-get update // 2. 필수 빌드 툴 설치 sudo apt-get install build-essential // 3. curl 설치 sudo apt-get install curl // 4. Node.js 설치 스크립트 다운로드 및 실행 curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -- // 5. Node.js 설치 sudo apt-get install nodejs // 6. yarn 설치 (선택) sudo npm install -g yarn
잘 설치됐다면 node -v 명령어를 입력했을 때 버전이 잘 나와야 해요.
2. Git Clone으로 프로젝트 가져오기 📁
공개 저장소에서 git clone 명령어를 사용해 프로젝트를 Ubuntu 서버에 복제했어요.
git clone -b {브랜치명} {레포지토리 주소}
3. ACG 설정 ⚙️
Redis의 인바운드 규칙을 설정하고, 서버에 대한 아웃바운드 포트(6379와 5432)를 열어서 통신이 가능하도록 했어요.
4. PM2를 이용한 자동화 🔄
PM2의 사용 이유
PM2는 Node.js 애플리케이션을 안정적으로 백그라운드에서 실행하고 관리하기 위해 사용돼요.
PM2 설치 및 설정 과정
// 1. 설치 yarn global add pm2 // 2. 애플리케이션 실행 pm2 start redis-sub.js --name "{앱 이름}" // 3. 시스템 부팅 시 자동 실행 설정 pm2 startup // 4. 실행 중인 프로세스 저장 pm2 save
결과 확인
node main.js로 publish 후 관리자 페이지에서 로그가 확인되었고, 데이터베이스에 데이터가 성공적으로 저장되었어요.
마치며
이 글을 통해 Node.js 설치부터 프로젝트 설정, PM2를 활용한 자동화 프로세스를 성공적으로 구축할 수 있었어요. 이러한 지식이 여러분의 프로젝트에 도움이 되길 바랍니다! 💻🎉
더 궁금한 점이나 질문이 있다면 언제든 댓글 남겨주세요. 😄
앞으로도 개발과 관련된 유익한 정보를 공유하는 Openlist가 되겠습니다. 응원해 주셔서 감사해요! 화이팅!
참고.
https://velog.io/@hsg5533/Ubuntu-Node.js-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0
[Ubuntu] Node.js 설치하기
※ 이 포스트는 우분투 18.04.01 LTS 버전을 기준으로 작성되었다.우분투 환경에 Node.js로 개발된 프로젝트를 업로드해야할 상황이 발생했다. 처음에는 아래의 명령어로 설치하면 될 것 같아서 시도
velog.io
비가 오는 날엔~
RainyCode를 찾아와
밤을 새워 기다릴게...반응형'Project > OpenList' 카테고리의 다른 글
CLOVA-Studio로 인공지능 데이터 평가 서버 구축하기 feat. 데이터 품질 개선 알고리즘 (2) 2024.09.25 GPT-4로 인공지능 데이터 캐싱 서버 구축하기 feat. Promise Pool (1) 2024.09.25 Pipe & Filter 아키텍처로 인공지능 데이터 캐싱 시스템 구축하기 (0) 2024.09.25 NestJS로 CLOVA Studio API 연동하기: 완벽 가이드 (1) 2024.09.25