Python: Criar um Makefile para a implementação na Stackhero
Esta documentação faz parte do guia Implementar em produção. Consulte o guia completo aqui: Como implementar o seu código Python em produção em poucos minutos.
👋 Bem-vindo à documentação do Stackhero!
Stackhero oferece uma solução cloud Python pronta a usar que proporciona uma série de benefícios, incluindo:
- Implemente a sua aplicação em segundos com um simples
git push.- Utilize o seu próprio nome de domínio e beneficie da configuração automática de certificados HTTPS para uma segurança reforçada.
- Desfrute de tranquilidade com backups automáticos, atualizações com um clique, e preços simples, transparentes e previsíveis.
- Obtenha performance ótima e segurança robusta graças a uma VM privada e dedicada.
Poupe tempo e simplifique a sua vida: só leva 5 minutos para experimentar a solução de hospedagem cloud Python do Stackhero!
Para indicar à Stackhero como executar a sua aplicação, utilize um Makefile na raiz do seu projeto.
Se não está familiarizado com ficheiros
Makefilee o comandomake, não se preocupe. Basta seguir estas instruções para começar.
Crie um ficheiro Makefile na raiz do seu projeto com o seguinte conteúdo:
run:
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -
Há alguns pontos importantes a ter em conta neste Makefile:
- A regra
runé obrigatória, pois a Stackhero executa-a automaticamente. Não a renomeie. - O comando
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -é apenas um exemplo. Certifique-se de o ajustar às necessidades da sua aplicação. - Certifique-se de que inicia o comando gunicorn com um carácter de tabulação. Se vir um erro como "*** missing separator", significa que falta a tabulação.
Neste exemplo, o Gunicorn é utilizado para servir a sua aplicação (certifique-se de que está listado no seu requirements.txt). O argumento -b 0.0.0.0:8080 indica que escuta em todas as interfaces na porta 8080. Se escolher outra porta, terá também de atualizar a configuração do seu serviço Python no dashboard Stackhero. A parte app:app refere-se ao objeto app dentro do seu ficheiro app.py.