[1] npm run start --prefix client exited with code 0
node.js, express, react.js 라이브러리 사용
문제
백 서버와 프론트 서버를 동시에 실행할 수 있게
concurrently package 사용 설정으로
client/package.json
"start": "react-scripts start",
server/package.json
scripts": {
"start": "node server/index.js",
"backend": "nodemon server/index.js",
"dev": "concurrently \"npm run backend\" \"cd ./client && npm run start\""
}
npm run dev를 하면
[1] npm run start --prefix client exited with code 0 - 가 콘솔에 뜨면서
client의 npm run start가 무시당한다.
즉 프론트 서버가 돌아가지 않았다.
백 서버를 먼저 실행하고, 프론트 서버를 실행하면,
해당 포트가 이미 사용 중이라는 문구와 함께, 다른 포트에서 프론트 서버를 실행하겠냐는 권유를 볼 수 있었다.
이유
Webpack dev server의 포트가 자동으로 바뀐다? / Vue-Cli와 portfinder
프론트 앱 서버의 포트가 자동으로 변경된다? 되게 신기한 경험을 했다. Vue (webpack dev server)와 Spring boot (톰캣)를 띄웠는데 이 둘을 실행하는 순서에 따라 webpack dev server가 다른 포트로 뜨고, 작동.
www.ecsimsw.com
이 글을 보고 해답을 얻었다.
실제로 백엔드 서버를 실행하면
npm run backend
IPv6를 사용하고 있다.
npm run start
반면 IPv4를 사용한다.
IPv6가 IPv4보다 우선 순위를 갖기 때문에 내가 사용한 3000번 포트에서 react-scripts start를 실행할 수 없는 것이다.
해결
client의 package.json에서
"start": "export PORT=3001 && react-scripts start",
'Node.js' 카테고리의 다른 글
User.findOne is not a function (0) | 2022.03.13 |
---|---|
[출석부 만들기] mongoose 연결하고 mongoDB compass에서 확인하기 (0) | 2022.02.21 |
[MongoDB] 몽구스 스키마 설계, password 암호화, 저장 (0) | 2022.02.13 |
TypeError: "x" is not a constructor (0) | 2022.02.13 |
[Node.js] node-sqlite DB에서 여러 row를 반환하는 쿼리 (0) | 2022.01.28 |