Coding/node.js

Heroku 서버 배포 에러들

__Lucie__ 2022. 6. 15. 18:50

Heroku를 사용해 2개월 간 작업한 node.js 서버 파일들을 배포하려고 했다.

인프런 강의를 들으며 따라했는데, 너무너무 많은 오류를 만나 밤새웠지만 해결이 되지 않았다.. 😂 🤬

 

혹시나.. 미래의 내가 지금 포스팅을 보면 해결할 수 있지 않을까..

 

 

Heroku를 통해 서버 배포하기 (과정)

배포하는 방법은 구글링 하면 많이 나오기 때문에.. 자세히는 적지 않겠다.

그래도 내 방식대로 순서만 정리하자면

1. Heroku 회원가입하기

2. 노트북에 Heroku 설치 (윈도우는 파일 다운 받아야 함, 맥은 터미널에서 brew 이용해 설치 - 자세한 과정은 구글링 하면 나옴)

3. 작업해 둔 서버 파일에 들어가서

heroku login
heroku git:remote -a (헤로쿠에서만든앱이름)
git push heroku main //master라고 써놓은 데가 많았는데 내가 할 때는 main으로 해야했다 (왜지?)

를 작업하면 되는데

 

 

문제의 이 부분..

git push heroku main

 

 

! [remote rejected] main -> main (pre-receive hook declined)

이 오류가 자꾸 뜨는 것이다

 

구글링한 결과 브랜치를 새로 만들어서 거기서 push

git checkout -b tempbranch //새로운 브랜치를 만들어 거기로 간다.
git push heroku tempbranch

이렇게 하라는 건데,

이거 후에 merge 하는 건지.. 잘 모르겠어서

 

구글링하면 나오는 아래 코드를 쳤는데,

git push heroku tempbranch:main

뭔가 내가 원하는 명령어가 아니었던 것 같다.

이렇게 해도 같은 오류가 발생했다.

( ! [remote rejected] tempbranch -> main (pre-receive hook declined) )

(main->main에서 tempbranch->main으로 바뀜)

 

HEAD를 커밋해 오기도 하고...  

pull도 해 봤는데,

 

성공적으로 배포를 못했다.

 

중간에 배포 성공하기는 했는데,

nodejs 프로젝트 내부에 파이썬 파일이 있었는데 각종 파이썬 모듈을 설치하지 않고 진행해 (pandas, opencv, regex 등)

그 앱은 포기하고..

heroku에 새로 앱을 create해서 시도했지만 결국 못했다.

 

사실 깃허브에 대한 지식이 별로 없어서 해결 못하고 있는 것 같긴 하다..ㅠㅠ

깃허브 공부를 꾸준히 해야겠다고 생각이 들었다.

 

그리고 nodejs 프로젝트 내부에 파이썬 파일을 갖고와서 사용을 못하는 건가?

사용해도 파이썬의 모듈을 인식 못하는 느낌을 받았다.

 

https://velog.io/@hyunjoong/heroku-remote-rejected-master-pre-receive-hook-declined-%EC%97%90%EB%9F%AC

 

heroku [remote rejected] master (pre-receive hook declined) 에러

heroku server 배포 에러 heroku [remote rejected]

velog.io

이 분은 subtree를 만들어 해결하셨는데, 나중에 한 번 해봐야겠다.