개요
Heroku는 클라우드상에 애플리케이션을 빌드, 실행, 운영할 수 있게 해주는 서비스입니다. Git을 사용하여 간단히 배포가 가능하며 소규모 사이트나 개인의 애플리케이션을 무료로 호스팅 할 수 있습니다.
사전 준비
Heorku CLI 설치 및 로그인
$ sudo apt update
$ sudo apt install heroku
설치가 완료되면 Heroku에 로그인합니다.
$ heroku login
Node.js 애플리케이션 준비
Node.js 애플리케이션을 작성합니다. 혹은 샘플 애플리케이션을 사용하도록 합니다. 다음 명령어를 사용하여 샘플 애플리케이션을 로컬 환경으로 복사합니다.
$ git clone https://github.com/heroku/node-js-getting-started.git
$ cd node-js-getting-started
애플리케이션 배포하기
Heroku 저장소 및 App을 생성하여 소스코드를 수신할 수 있도록 합니다.
$ heroku create
Creating sharp-rain-871... done, stack is heroku-18
http://sharp-rain-871.herokuapp.com/ | https://git.heroku.com/sharp-rain-871.git
Git remote heroku added
이 명령어를 실행하면 heroku
라는 이름의 원격 저장소가 생성됩니다.
위와 같이 이름을 지정하지 않은 채 Heroku 저장소를 생성한다면 Heroku는 임의의 이름이 지정되어 생성됩니다. 만약 본인이 원하는 이름이 있다면 생성하 경우 다음과 같이 이름을 넣어서 생성할 수 있으며, 생성이 된 된 후에 이름을 변경할 경우도 rename 옵션을 사용하여 변경할 수 있습니다.
$ heroku create AppName
$ heroku apps:rename NewAppName
이제 원격 저장소에 Node.js 애플리케이션 소스코드를 배포합니다.
$ git push heroku master
Counting objects: 488, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (367/367), done.
Writing objects: 100% (488/488), 231.85 KiB | 115.92 MiB/s, done.
Total 488 (delta 86), reused 488 (delta 86)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Node.js app detected
remote:
remote: -----> Creating runtime environment
remote:
remote: NPM_CONFIG_LOGLEVEL=error
remote: NODE_VERBOSE=false
remote: NODE_ENV=production
remote: NODE_MODULES_CACHE=true
remote:
remote: -----> Installing binaries
remote: engines.node (package.json): 10.13.0
remote: engines.npm (package.json): unspecified (use default)
remote:
remote: Resolving node version 10.13.0...
remote: Downloading and installing node 10.13.0...
remote: Using default npm version: 6.4.1
....
remote: -----> Build succeeded!
remote: -----> Discovering process types
remote: Procfile declares types -> web
remote:
remote: -----> Compressing...
remote: Done: 19M
remote: -----> Launching...
remote: Released v3
remote: http://sharp-rain-871.herokuapp.com deployed to Heroku
remote:
remote: Verifying deploy... done.
To https://git.heroku.com/nameless-savannah-4829.git
* [new branch] master -> master
애플리케이션의 배포가 완료되었습니다. 다음 명령어를 사용하여 Node.js 애플리케이션을 실행합니다.
$ heroku ps:scale web=1
앞서 자동으로 생성된 URL을 이용하여 애플리케이션에 접근하도록 합니다. 혹은 간단히 다음과 같은 명령어를 사용하여 접근할 수도 있습니다.
$ heroku open
참고
'개발도구 > 기타' 카테고리의 다른 글
[Vim] Normal모드에서 영문 키보드로 자동 전환하기 (Windows) (3) | 2020.10.13 |
---|---|
StackEdit 작성글 일괄 내보내기(export) 스크립트 (0) | 2020.09.25 |
Oracle Cloud Free Tier 가입 오류 및 해결 과정 (0) | 2020.05.11 |
Heroku Stack 지원만료 안내 및 조치 (0) | 2019.11.19 |
Permission Error for NPM install -g (0) | 2019.08.25 |