React

한 개의 스크립트로 두 개의 서버 돌리기

Uheeking 2024. 9. 4. 16:19
728x90
반응형

하나의 스크립트로 두 개의 프로세스를 돌릴 수 있는 방법은 여러가지 있는데, 그 중 두 가지를 소개하고자 한다.

1. concurrently 사용하기

npm install concurrently --save

위의 명령어를 쳐서 concurrently가 package.json에 설치되었는지 확인해준다. 그리고 나서 package.json에 아래와 같이 수정해준다.

"start": "concurrently \\"supervisor app.js\\" \\"supervisor mqtt/mqttClient.js\\""

여기서 스크립트에 지정한 이름과 겹친다면 수정해주고, 위에 넣은 내용은 내 기준으로 넣은 것이기에 수정해준다. 본인이 돌리고 싶은 파일로 수정해준다.

npm run start

위의 명령어를 돌렸을 때 잘 돌아가면 성공한 것이다.

2. npm-run-all 사용하기

만약 1번의 방법으로 잘 돌아가지 않는다면, 2번의 방법도 추천한다.

npm install npm-run-all --save-dev

npm-run-all을 설치해준다.

{
  "scripts": {
    "start:app": "supervisor app.js",
    "start:mqtt": "supervisor mqtt/mqttClient.js",
    "start": "npm-run-all --parallel start:app start:mqtt"
  }
}

아까와 같이 package.json에 들어가서 npm-run-all이 잘 설치되었는지 확인해준다. 잘 설치되었다면 위와 같이 스크립트에 명령어를 추가해준다. 내 경우 두 가지의 파일을 한꺼번에 돌리고자 하였기에 위와 같이 추가해줬다.

npm run start

그리고 start스크립트가 두 가지의 파일을 한꺼번에 돌리는 것이기에 npm run start를 구동하여 한 번에 두 가지 프로세스가 구동되도록 하면 된다.

👇🏻 참고 사이트

https://velog.io/@th_velog/Npm-concurrently-사용해보기

728x90
반응형