강의

멘토링

커뮤니티

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

br님의 프로필 이미지
br

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

프론트 서버 배포하기

프론트 npm run build가 안됩니다

작성

·

851

·

수정됨

0

ubuntu@ip-172-31-37-255:~/react-nodebird/front$ npm run build
> react-nodebird-front@1.0.0 build /home/ubuntu/react-nodebird/front

> cross-env ANALYZE=true NODE_ENV=production next build

Browserslist: caniuse-lite is outdated. Please run:

npx browserslist@latest --update-db

info  - Using external babel configuration from /home/ubuntu/react-nodebird/front/.babelrc

Webpack Bundle Analyzer saved report to /home/ubuntu/react-nodebird/front/.next/server/analyze/client.html 

Webpack Bundle Analyzer saved report to /home/ubuntu/react-nodebird/front/.next/analyze/client.html        

info  - Creating an optimized production build

info  - Compiled successfully

> Build error occurred

Error: Build optimization failed: found page without a React Component as default export in 

pages/about

See https://err.sh/vercel/next.js/page-without-valid-component for more info.

at build (/home/ubuntu/react-nodebird/front/node_modules/next/dist/build/index.js:21:115)

info  - Collecting page data .npm ERR! code ELIFECYCLE

npm ERR! errno 1

npm ERR! react-nodebird-front@1.0.0 build: cross-env ANALYZE=true NODE_ENV=production next build

npm ERR! Exit status 1

npm ERR!

npm ERR! Failed at the react-nodebird-front@1.0.0 build script.

npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:

npm ERR!     /home/ubuntu/.npm/_logs/2022-12-03T04_13_49_262Z-debug.log

 

백엔드에서 npm run dev하면 use 80 무슨 오류 떠서 포트번호 85번으로 바꿧어요

백엔드쪽 app.js 85번으로 바꾸고

vim app.js에서 85번 바꾸고

프론트쪽 package.json에서 -p 85로 바꿧어요

git status해도 아무것도 안나오고 백엔드 프론트 서버키고 npm run build 하면 오류뜹니다

 

app.js

front / package.js

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

일단 프론트에는 pages/about.js에 default export가 빠졌다고 에러메시지에 되어있습니다. 에러메시지를 읽으세요.

포트는 웬만하면 80으로 해야합니다. 안 그러면 도메인 발급 후에도 주소 뒤에 85를 붙여야해요.

br님의 프로필 이미지
br
질문자

강의에서 about.js 삭제해서 그냥 주석처리하고 git 했는데 그런거 같네요 ㅠㅠ 하루종일 찾다가..

다시 돌려놓으니 build 됐어요

포트가 Error: listen EADDRINUSE: address already in use :::80 이거떠서

com창에서 netstat -ano? 였나 그거로 포트찾고 작업관리자에서 작업끝내기로 삭제했는데 뭐때문인지 계속 생기고 서버 접속이 안되서 바꾸긴했습니다 ㅜ

유분투 백엔드 ls 하면

image이렇게 뜨는데 괜찮은건가요??

 

image

back / git status 이거 다 해줘야하나요??

백엔드 유분투 ip에 접속은 됩니다

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

pm2가 자꾸 노드를 살리는겁니다. pm2 kill로 끝내세요.

서버에서는 git commit하는 거 아닙니다.

br님의 프로필 이미지
br
질문자

아..서버는 안하는거였네요

포트 80으로 변경했어요

sudo npx pm2 start npm -- start 하고

image

sudo npx pm2 monit 했어요

image

그리고 유분투 프론트ip 접속하면 페이지 오류 뜨는데

sudo npm start 하면 프론트 화면 나옵니다 그럼 이걸로 하면 되나요??

 

image

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

sudo npx pm2 start npm -- start && sudo npx pm2 monit

해보세요. npm start만 하면 터미널 끌 때 서버도 같이 꺼집니다.

br님의 프로필 이미지
br
질문자

했는데 안됩니다

 

image

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

sudo pm2 kill 한 후에 다시 해보세요

br님의 프로필 이미지
br
질문자

npx 붙여야하는거죠? sudo npx pm2 kill 한 다음에

sudo npx pm2 start npm -- start && sudo npx pm2 monit 했는데

똑같이 process List에 {#aN-fg} 나옵니다

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

npx를 붙이지 마세요 sudo pm2 kill이나 pm2 kill 하세요.

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

일단 기본적으로 pm2가 잘못 설치된 문제 같습니다

br님의 프로필 이미지
br
질문자

pm2 다시 설치하고 sudo npx pm2 start npm -- start && sudo npx pm2 monit 했더니 됐어요

강의에서 drop database `react-nodebird` 하고 use react-nodebird 했는데 데이터베이스가 없다고 떳어요

npx sequelize db:create 해서 데이터베이스 만들고 mysql > use react-nodebird 접속 후

show tables 하니까 없다고 나오는데 여기서 어떻게 해야하나요 ㅠ 강의에서는 안나오는거 같아요

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

서버 시작할 때 테이블이 자동으로 생성됩니다

br님의 프로필 이미지
br

작성한 질문수

질문하기