Heroku가 모든 서비스를 유료화 했습니다. 이제 더이상 무료 호스팅을 지원하지 않습니다.
강의를 하다보면 (특히 Vue 같은 SPA) 테스트를 위해 백엔드에서 동작하는 REST 서비스가 필요한 경우가 많다. 그래서 이제까지 한번 만들고 버렸던 프로젝트가 한둘이 아니다. 정성들여 만들어 놓고 어디 뒀는지 찾다가 포기. ㅜㅜ
그래서 AWS에 서비스를 등록했었는데 올린 후 내리는걸 깜빡 해서 과금이 되는 불상사를 격고는 손절 하고 있다가 Heroku에 등록해서 몇일 써봤다. (Heroku는 애플리케이션 하나에 대해서는 무료이다. )
이번 포스트에서는 Heroku를 통한 스프링 부트 애플리케이션 운용에 대해서 살펴보자.
Cloud Service의 종류와 Heroku
Cloud Service의 종류
클라우드서비스는 서비스의 유형에 따라 IaaS(Infrastructure-as-a-Service), PaaS(Platform-as-a-Service), SaaS(Software-as-a-Service) 와 같은 용어로 서비스의 형태를 구분한다. 아래의 이미지는 각 서비스의 특징에 대해서 잘 보여주고 있다.
즉 on-site는 개발자가 컴퓨터 구매, 네트워크 설정 등의 작업 부터 SW 개발까지 모조리 진행하는 것라면 IaaS는 Infrastructure 즉 Network~Virtualization 까지는 클라우드가 해줄테니 나머지를 개발자가 처리하라는 것이다. PaaS는 다시 IaaS 위에 OS와 프로그램을 위한 runtime(JVM 같은) 까지 준비 해놓을 테니 개발자는 데이터와 애플리케이션만 준비하면 된다. SaaS는 이마저도 다 되어있으니 그냥 쓰면 된다.
d:\workspaces\ws_eclipse\utils\multiplex>heroku login
heroku: Press any key to open up the browser to login or q to exit:
Opening browser to https://cli-auth.heroku.com/auth/cli/browser/~~~~~~~~~~~~~~~~~~~~~~
Logging in... done
Logged in as itsmeyjc@~~~~
로그인 성공 후 git으로 관리하는 프로젝트로 이동해서 현재 프로젝트의 git 주소를 remote 명령으로 추가해준다.
d:\workspaces\ws_eclipse\utils\multiplex>heroku git:remote -a 앱이름
set git remote heroku to https://git.heroku.com/somerest.git
이제 git remove -v 명령을 통해 확인해보면 기존의 origin과 함께 heroku가 추가된 것을 볼 수 있다.