Como subir uma aplicação Python (Flask/Django) Print

  • 0

Como subir uma aplicação Python (Flask/Django) na GeHost

Opa! 👋 Aqui é a Sensei da GeHost. Bora aprender como colocar sua aplicação Python no ar de forma simples e segura? Não se assusta com a quantidade de passos — você vai entender cada um.

📋 Pré-requisitos

  • Uma aplicação Python funcional (Flask ou Django) pronta no seu computador.
  • Um plano de hospedagem GeHost Médio ou Plus (não funciona no Econômico).
  • Acesso ao painel de controle (recebe o login por e-mail quando contrata).
  • Um gerenciador de versões como Git (opcional, mas recomendado — facilita muito).

🔧 Passo 1: Preparar sua aplicação

Antes de subir para a hospedagem, sua aplicação precisa estar "arrumada". Faça isso no seu computador:

  1. Crie um arquivo requirements.txt com todas as bibliotecas que sua app usa. Abra o terminal na pasta do projeto e rode:
    pip freeze > requirements.txt
    Esse arquivo lista tudo que o servidor vai precisar instalar.
  2. Crie um arquivo .gitignore (se usar Git) pra não subir arquivos desnecessários como __pycache__, .env ou pasta venv.
  3. Teste localmente que tudo funciona: python app.py ou python manage.py runserver (Django).

🚀 Passo 2: Enviar sua aplicação para a hospedagem

Você tem duas formas de fazer isso:

Opção A: Usando Git (recomendado)

  1. Crie um repositório no GitHub (ou GitLab) e coloque seu código lá.
  2. Acesse o painel GeHost, vá em Gerenciador de Arquivos ou use SSH.
  3. No terminal do servidor (SSH), navegue até a pasta pública (public_html) e clone o repositório:
    cd ~
    git clone <sua-url-do-repositorio>

Opção B: Enviar arquivos via FTP

  1. Faça o download de um cliente FTP (FileZilla, WinSCP ou Cyberduck).
  2. Conecte usando as credenciais do painel GeHost (user, senha e servidor FTP).
  3. Envie toda a pasta do seu projeto para public_html/app_python (ou o nome que quiser).

⚙️ Passo 3: Conectar via SSH e instalar as dependências

Agora você entra "dentro" do servidor para preparar tudo. Use SSH (está no painel GeHost, aba "Shell / SSH Access").

  1. Conecte via SSH usando um terminal (Mac/Linux) ou PuTTY (Windows).
  2. Navegue até a pasta da sua app:
    cd public_html/app_python
  3. Crie um ambiente virtual (isola as dependências da sua app das outras):
    python3 -m venv venv
  4. Ative o ambiente virtual:
    source venv/bin/activate
    (Você vai ver (venv) aparecer no terminal — sinal de que deu certo.)
  5. Instale as dependências do seu projeto:
    pip install -r requirements.txt

🌐 Passo 4: Configurar o servidor web (Gunicorn + Nginx)

Para que sua app Python funcione em produção, você precisa de um "intermediário" — o Gunicorn (executa sua app) + Nginx (entrega para o visitante). Ainda no SSH:

  1. Instale o Gunicorn (com a venv ativa):
    pip install gunicorn
  2. Teste se a app roda com Gunicorn (Flask):
    gunicorn -w 4 -b 0.0.0.0:8000 app:app
    (Troque app:app pelo seu arquivo e classe. Para Django: seu_projeto.wsgi:application.)
  3. Pare o teste (Ctrl+C no terminal).
  4. Configure o Nginx — peça à equipe GeHost para criar um virtual host apontando para a porta 8000 do Gunicorn. Mande uma mensagem avisando que vai precisar dessa configuração.
💡 Dica: Se tiver dificuldade com Nginx, a equipe da GeHost pode ajudar — é parte do suporte padrão dos primeiros 30 dias. Só avisa!

🎬 Passo 5: Colocar em produção (systemd ou supervisor)

Para a aplicação ficar "viva" (rodando sempre, mesmo se o servidor reiniciar), use o systemd (mais moderno e recomendado):

  1. Crie um arquivo de serviço. Como root ou com sudo, crie /etc/systemd/system/app_python.service:
    [Unit]
    Description=Minha App Python
    After=network.target

    [Service]
    Type=notify
    User=seu_usuario
    WorkingDirectory=/home/seu_usuario/public_html/app_python
    ExecStart=/home/seu_usuario/public_html/app_python/venv/bin/gunicorn -w 4 -b 127.0.0.1:8000 app:app
    Restart=always
    RestartSec=10

    [Install]
    WantedBy=multi-user.target
    (Adapte os caminhos e o comando Gunicorn para sua app.)
  2. Ative o serviço:
    sudo systemctl enable app_python
    sudo systemctl start app_python
  3. Verifique se está rodando:
    sudo systemctl status app_python

✅ Dicas de ouro

  • Variáveis de ambiente: Nunca coloque senhas/chaves no código. Use um arquivo .env e a biblioteca python-dotenv.
  • Banco de dados: Se usa MySQL/PostgreSQL, configure no painel e no seu settings.py (Django) ou config (Flask).
  • HTTPS/SSL: O painel oferece certificados gratuitos — ativa no seu domínio.
  • Logs: Sempre verifique os logs da aplicação se algo der errado: sudo journalctl -u app_python -f.
  • Atualizar a app: Fez alterações? Se usar Git, puxe as mudanças (git pull) e reinicie o serviço: sudo systemctl restart app_python.

🆘 Algo deu errado?

Se a aplicação não sobe ou volta um erro:

  1. Verifique os logs: sudo journalctl -u app_python -n 50 (últimas 50 linhas).
  2. Teste manualmente: ative a venv e rode a app em debug.
  3. Confira as permissões das pastas (chmod 755 para pastas, 644 para arquivos).
  4. Certifique-se que todas as dependências foram instaladas no servidor.
  5. Não sabe resolver? Entre em contato com a equipe GeHost pelo suporte — é pra isso que a gente está aqui. 😊

Pronto! Sua aplicação Python agora está no ar. Boa sorte, Dev! 🎉


Was this answer helpful?

« Back