Deploy Heroku (Backend)

Passos para o deploy...

1) Instalar o Heroku CLI

$ npm install -g heroku-cli

2) Verificar a instalação do Heroku CLI

$ heroku --version

3) Efetuar o login com Heroku CLI

$ heroku login

Enter your Heroku credentials:
Email: <SEU E-MAIL>
Password: **********
Logged in as <SEU E-MAIL>

NOTA

Necessário ter um usuário registrado no Heroku.

Acessar: Heroku Signup

4) Clonar o repositório do projeto backend

$ git clone https://github.com/cod3rcursos/deploy-heroku-backend

5) Entrar na pasta do projeto backend

$ cd deploy-heroku-backend

6) Criar um projeto no Heroku via Heroku CLI

$ heroku create cod3r-my-money-app-backend

IMPORTANTE

Como exemplo, chamaremos a aplicação no Heroku de cod3r-my-money-app-backend, mas você precisa escolher um outro nome único.

7) Selecionar o buildpack para NodeJS

$ heroku buildpacks:set heroku/nodejs

8) Configurar o repositório remoto

$ heroku git:remote -a cod3r-my-money-app-backend

IMPORTANTE

Usar o nome do seu projeto.

9) Adicionar o Add-on do mLab para termos uma instância do MongoDB

Add-on do mLab

IMPORTANTE

Apesar de escolher a instância do MongoDB grátis, é necessário informar os dados de pagamento (cartão de crédito)... :(

10) Clicar no Add-on do mLab e adicionar o usuário da aplicação

Adicionar usuário do MongoDB

NOTA

No exemplo acima criei um usuário com nome mymoneyapp e senha mymoneyapp. É obvio que esse padrão senha não é recomendado para produção.

11) Configurar as variáveis de ambiente que a aplicação backend usa.

# URL_MONGO é mais ou menos assim: mongodb://user:pass@XYZ.mlab.com:19585/heroku_XYZ
$ heroku config:set MONGOLAB_URI=<URL_MONGO>

# Gere o seu próprio AUTH_SECRET
$ heroku config:set AUTH_SECRET=4bc12841b901f1716f71ab76b99699d6

12) Fazer deploy da aplicação via push no repositório.

$ git push heroku master

13) Definir o tipo de escalonamento mínimo (grátis) - Passo Opcional

$ heroku ps:scale web=1

14) Consultar o log e verificar se tudo ocorreu bem - Passo Opcional

$ heroku logs --tail