Python: Preparar Python e Flask para produção
Esta documentação faz parte do guia Criação de uma API REST. Consulte o guia completo aqui: Guia passo a passo para construir uma API REST com Flask em Python.
👋 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.
O servidor integrado do Flask é ótimo para desenvolvimento. Para produção, recomenda-se um servidor WSGI robusto como o Gunicorn. Veja como pode preparar-se:
-
Instale o Gunicorn:
pip install gunicorn pip freeze > requirements.txt -
Inicie a sua aplicação com o Gunicorn:
ENV=production gunicorn app:app \ --error-logfile - \ -b 0.0.0.0:8080Aqui,
app:apprefere-se ao seu ficheiro (app.py) e à instância da aplicação Flask (app). -
Pode adicionar um
Makefilepara alternar facilmente entre os modos de desenvolvimento e produção:.DEFAULT_GOAL := dev # O Stackhero for Python executa por defeito a regra "run". Redefinimos para correr 'prod'. run: prod prod: ENV=production gunicorn app:app \ --error-logfile - \ -b 0.0.0.0:8080 dev: python app.py
Pode iniciar o servidor em modo de desenvolvimento com make dev (ou simplesmente make), ou em modo de produção com make prod.