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 da Stackhero!
A Stackhero disponibiliza uma solução Python cloud pronta a usar, concebida para simplificar o seu processo de deployment:
- Implemente a sua aplicação em produção em segundos com um simples
git push.- Utilize o seu próprio domínio, com configuração automática de certificado HTTPS para ligações seguras geridas por si.
- Conte com backups automáticos, atualizações com um clique e preços previsíveis, para que se possa focar no seu código e não na gestão da infraestrutura.
- Beneficie de elevada performance e segurança numa infraestrutura privada e dedicada. O seu ambiente está isolado e protegido.
Poupe tempo e simplifique o seu workflow: pode ter o seu código a funcionar com o alojamento Python cloud da Stackhero em apenas 5 minutos.
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.