Python: Implementar em produção

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!

O serviço de cloud hosting Python da Stackhero oferece uma forma simples e fiável de implementar os seus projetos Python em produção em apenas alguns minutos. Com uma configuração intuitiva e funcionalidades robustas, pode concentrar-se no desenvolvimento da sua aplicação enquanto a Stackhero trata de todos os detalhes da infraestrutura.

Algumas funcionalidades principais incluem:

  • Implementação com um simples git push
  • Domínios personalizados com gestão automática de certificados TLS (HTTPS)
  • VMs dedicadas e privadas para maior segurança e confidencialidade
  • Suporte para HTTP/2, TLS 1.3 (HTTPS), WebSockets, compressão GZIP & Brotli, ETag e acesso a portas TCP/UDP

Antes de começar a utilizar a Stackhero, certifique-se de que tem o Git instalado no seu computador.

Se ainda não tem o seu ambiente de desenvolvimento configurado ou pretende poupar tempo na configuração, pode experimentar o Code-Hero da Stackhero.

O Code-Hero é uma plataforma de desenvolvimento pronta a usar, fácil de utilizar, que funciona diretamente no seu browser, em qualquer computador, tablet ou telemóvel. Baseado num fork do VSCode, o Code-Hero já vem com as ferramentas essenciais de desenvolvimento pré-instaladas, para que possa começar a programar de imediato, sem configurações adicionais.

Exemplo de uma instância Code-Hero a correr diretamente no browserExemplo de uma instância Code-Hero a correr diretamente no browser

A implementação da sua aplicação Python na Stackhero foi desenhada para ser simples e fluida. Veja como pode fazê-lo:

  1. Crie um serviço Python na Stackhero.
  2. Adicione a sua chave pública SSH à configuração do seu serviço Python.
  3. Configure o comando git push na sua plataforma de desenvolvimento.
  4. Adicione um Makefile ao seu projeto.
  5. Implemente o seu código em produção.

Se encontrar algum problema durante a implementação, provavelmente encontrará respostas na documentação "Resolução de problemas". Consultar esta secção primeiro pode evitar frustrações desnecessárias.

Se ainda não iniciou um serviço Stackhero for Python, pode criar um a partir do seu dashboard Stackhero. Normalmente demora apenas alguns minutos.

Assim que o seu serviço Python estiver ativo, terá de adicionar a sua chave pública SSH à configuração. Pode visualizar a sua chave pública executando:

cat ~/.ssh/id_*.pub

Ainda não tem chaves SSH?

Pode gerá-las com:

ssh-keygen -t ed25519

Para adicionar a sua chave pública ao seu serviço Python:

  1. Abra o dashboard Stackhero e selecione o seu serviço Python.
  2. Clique no botão "Configurar".
  3. Cole a sua chave pública SSH na secção "Chaves públicas SSH".

Exemplo de configuração de um serviço PythonExemplo de configuração de um serviço Python

Dica: Também pode definir a sua chave pública SSH globalmente, para que qualquer novo serviço criado a inclua automaticamente. Para isso, aceda ao seu perfil no dashboard Stackhero, clique na sua foto de perfil no canto superior direito, selecione "O seu perfil" e adicione a sua chave pública SSH.

A Stackhero facilita a implementação utilizando o CLI do Git e o comando familiar git push. Não é necessário instalar software adicional, basta configurar o seu remote Git uma vez e está pronto a usar.

Encontrará o seu git remote command na página principal do seu serviço no dashboard Stackhero. Terá um aspeto semelhante a este:

git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git

Comando Git remote Python no dashboard da StackheroComando Git remote Python no dashboard da 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 Makefile e o comando make, 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:

  1. A regra run é obrigatória, pois a Stackhero executa-a automaticamente. Não a renomeie.
  2. 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.
  3. 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.

Depois de tudo configurado, está pronto para implementar. A partir do diretório do seu projeto, utilize este comando para enviar o seu código para a Stackhero:

git push stackhero main

Na primeira vez que executar este comando, ser-lhe-á pedido para confirmar a impressão digital da chave SSH. Basta responder "yes" quando solicitado. Em poucos segundos, a sua aplicação estará online.

Exemplo de implementação de código Python na Stackhero usando o comando git pushExemplo de implementação de código Python na Stackhero usando o comando git push

Para ver a sua aplicação implementada, aceda ao URL "website" indicado no seu dashboard Stackhero (normalmente tem o formato https://<XXXXXX>.stackhero-network.com).

E pronto, a sua aplicação está agora em produção.

Está a ter problemas durante a implementação?

A secção Resolução de problemas está repleta de soluções para o ajudar a resolver rapidamente qualquer questão.

Esperamos que este guia tenha tornado claro e acessível o processo de implementação do seu código Python em produção com a Stackhero. Com esta base, pode colocar os seus projetos online de forma fiável.

Se quiser aprofundar, a documentação "Usos avançados de implementação" aborda temas como implementar a partir de diferentes branches, tags ou commits git, gerir múltiplos ambientes (como staging e produção), e trabalhar com variáveis de ambiente.

E lembre-se, se encontrar algum problema, a documentação "Resolução de problemas" está sempre disponível para o ajudar a retomar rapidamente o seu trabalho.