Skip to content

Instantly share code, notes, and snippets.

@ajsaraujo
Last active October 22, 2020 10:24
Show Gist options
  • Save ajsaraujo/38b0ca4d4f62fe800664673bd3b03487 to your computer and use it in GitHub Desktop.
Save ajsaraujo/38b0ca4d4f62fe800664673bd3b03487 to your computer and use it in GitHub Desktop.
Manhas do Heroku

Manhas do Heroku

Esse Gist tem a intenção de servir como material para rápida consulta sobre como fazer alguma coisa no Heroku.

Pré-requisitos

  • Git
  • Conta no Heroku
  • Heroku CLI

O Heroku vai tentar identificar qual é a tecnologia que você está usando, e com isso executar as rotinas para instalar as dependências e tudo mais que for necessário quando você der push. No entanto, você ainda precisa dizer a ele como iniciar a sua aplicação. Para isso, criamos um arquivo chamado Procfile na raiz do projeto. Para iniciar uma aplicação Express, por exemplo, bastou incluir a seguinte linha no Procfile:

web: node index.js

Para ver a documentação completa sobre o Procfile, clique aqui.

Manhas

# Autentica no Heroku.
$ heroku login

# Cria um app Heroku referente ao diretório atual. 
$ heroku create

# Upa as mudanças da branch para o Heroku.
$ git push heroku <nome_da_branch>

# Abre o app no seu browser padrão
$ heroku open

# Abre o app no endpoint fornecido
$ heroku open <endpoint>

# Muda o número de dynos do seu app para o valor fornecido
$ heroku ps:scale web=<num>

# Configura uma variável de ambiente no seu app.
$ heroku config:set <var_name>=<value>

# Obtém os logs da aplicação
$ heroku logs

# Reinicia o dyno especificado. Se vc não passar nenhum, reinicia todos do app.
$ heroku dyno:restart <dyno>

Para ver a lista completa de comandos da Heroku CLI, clique aqui.

Dyno Gratuito

Cada conta tem um limite de horas gratuitas de Dyno que ela pode utilizar.

Quando você iniciar um dyno, ele estará acordado. Se ele não receber nenhuma requisição num intervalo de 30 minutos, o Heroku vai colocá-lo pra dormir. O dyno acordará ao receber novas requisições e assim sucessivamente.

Assim, seu dyno consumirá horas apenas enquanto estiver acordado. Considerando um mês de 31 dias, seriam necessárias 744 dyno-horas para manter um dyno acordado o mês inteiro, 24 horas por dia. Uma conta gratuita possui um total de 550 dyno-horas mensais para usar. Se você fornecer um cartão de crédito, vai ganhar 450 horas adicionais, totalizando 1000 horas, o suficiente para manter um dyno acordado 24/7 e um dyno extra por algumas horas. Uma vez que você atinja o limite de horas mensais, todos os seus dynos gratuitos serão postos pra hibernar até o fim do mês. Você receberá e-mails com notificações ao atingir 80% e 100% da cota de horas mensal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment