반응형
하나의 스크립트로 두 개의 프로세스를 돌릴 수 있는 방법은 여러가지 있는데, 그 중 두 가지를 소개하고자 한다.
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를 구동하여 한 번에 두 가지 프로세스가 구동되도록 하면 된다.
👇🏻 참고 사이트
반응형