강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

학민 노님의 프로필 이미지
학민 노

작성한 질문수

습관부터 바꿔주는 Node.js & Express 기초

pm2 사용법

pm2 start ecosystem.config.js로 실행했는데 require로 작성하는 것에 에러가 뜹니다.

작성

·

952

·

수정됨

0

 

//  server-register.cjs
require("@babel/register");
require("./index.js");

 

// ecosystem.config.cjs 
module.exports = {
  apps: [
    {
      name: "api",
      script: "./src/server-register.js",
      exec_mode: "cluster",
      watch: false,
      instances: 0,
    },
  ],
};

cli에서 pm2 start ecosystem.config.js로 실행했는데 처음엔 status가 online으로 잘 뜨지만 서버가 실행이 안됩니다.
Cannot find module src/server-register.js'
imported from /usr/local/lib/node_modules/pm2/lib/ProcessContainer.js 라고 나오는데 install도 다했는데 뭐가 문제일까요?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

학민노님, PM2를 사용하여 Node.js 애플리케이션이 온라인 상태가 되었음에도 불구하고 서버가 실행되지 않는 문제를 접하셨군요.

에러 메시지 ‘Cannot find module src/server-register.js’에 따르면, PM2가 src/server-register.js 파일을 찾지 못하고 있습니다. 이는 몇 가지 이유로 발생할 수 있는데요, 다음 체크리스트를 확인해 보시기 바랍니다.

  1. 프로젝트의 루트 경로에서 실행하는가?

    • PM2는 기본적으로 실행하는 위치의 경로를 기준으로 하여 파일을 찾습니다. 프로젝트의 루트 경로에서 pm2 start ecosystem.config.js 명령어를 실행해야 합니다.
  2. src/server-register.js 파일이 해당 경로에 정말로 존재하는가?

    • 파일 경로를 확인해 보고 파일이 실제로 그 위치에 있는지 검사해 보세요.
  3. 파일 경로에 오타가 없는가?

    • 경로나 파일명에 오타가 없는지 다시 한 번 확인해 보세요.
  4. 경로가 올바르게 설정되어 있는가?

    • ecosystem.config.js 파일에 script 경로를 정확히 ./src/server-register.js 로 설정했는지 확인하세요.
  5. @babel/register와 관련된 종속성들이 잘 설치되었는가?

    • 프로젝트가 사용하는 종속성들이 적절히 설치되어 있는지, package.json을 통해 확인해 보세요.

PM2 실행에 관한 구체적인 문제 해결은 PM2 공식 문서 또는 관련 커뮤니티, 포럼에서 추가적인 해결책을 찾을 수 있습니다. PM2 설정이 더 필요하거나 다른 이슈가 있다면, 해당 정보와 함께 다시 질문해 주세요.

학민 노님의 프로필 이미지
학민 노

작성한 질문수

질문하기