본문 바로가기

Project Log/CommentTeller

Google Cloud Platform - App Engine으로 배포하기?

GCP App Engine이라는 서비스를 이용하면 아주 간편하게 서버를 배포할 수 있다고 해서 사용하기로 했다.

지난번 API 사용할 때 무료 평가판을 1년 동안 사용할 수 있게 되어서, 사용할 수 있을 때 알차게 사용하고 싶기도 하고 한번 써보고 싶었다.

 

이제 배포만하면 끝이다! 하고 패기롭게 시작했다가 고통받고 있다. 일단, 배포 과정은 소스를 스토리지에 올리면 package.json을 기준으로 의존하고 있는 package를 다운로드하여 배포하는 식으로 이루어진다. 그런데 문제는, 내가 사용하고 있는 형태소 분석 라이브러리인 mecab-ya라이브러리는 npm install을 통해 다운로드한 후, 다시 bash script를 이용해서 필요한 모듈과 파일들을 다시 다운로드하여줘야 한다.

그런데 gcp는 배포할 때 package.json에 기록된 패키지만 npm install 하여 배포하기 때문에 그 후에 bash script를 통해 다운로드하여주는 과정은 진행하지 않는다. 따라서 형태소 분석하는 모듈을 사용하는 코드에서 모듈을 찾을 수가 없어 오류가 발생하게 된다.

 

와... 진짜 하루 종일 이것저것 찾아보고 배포만 몇 번을 다시 했는데도 다 실패했다... 또르르... 저 bash 스크립트로 설치해주는 부분을 npm start 할 때 넣어야 하나? 하고 넣어봤지만 그래도 오류가 난다. 그리고 가이드에서도 start 부분은 인스턴스 생성을 하는 부분이기 때문에 최대한 간결하게 하라고 적혀있다. 일단 권장사항이고 나발이고 돌아가는 거라도 눈으로 보고 싶었는데 오류가 나서 돌아가지도 않는다.

 

후... 혹시나 비슷한 사람이 있나 해서 스택오버플로에 찾아봤는데 답변도 영 시원찮다.

 

How to force app engine upload node_modules

In my project we are using nodejs with typescript for google cloud app engine app development. We have our own build mechanism to compile ts files into javascript ,then collect them into a complete

stackoverflow.com

로컬에서 돌리면 진짜 잘 돌아가는데.. 구우우우웅우우욷이 배포를 해야 하나?라고 하면 그런 건 아니지만... 그래도 하고 싶다...

와 진짜 어떻게 해야 하지? 이런 경우는 생각해 보지 못했다ㅋㅋㅋㅋㅋㅋ 와 정말 간단하게 배포될 거라고 생각했는데... npm도 겁나 뒤져보고 구글링도 엄청했는데 아직까지도 못 찾았다... 후... 내가 구글링하는 검색어가 이상한 건가... 내가 아직 npm 이해를 잘 못했나...