🐍 Configurando Apache com Python Django (WSGI) na SaveinCloud
⚠️ Todas as configurações demonstradas neste manual são exemplos simples e hipotéticos. Pode ser necessário realizar adaptações conforme a topologia do seu ambiente.
Este guia mostra como realizar o deploy de uma aplicação Django utilizando Apache com WSGI dentro da plataforma SaveinCloud.
✅ Requisitos recomendados
Antes de iniciar o deploy, certifique-se de que o projeto contenha:
-
Um arquivo
wsgi.py
configurado corretamente; -
Um arquivo
requirements.txt
com as dependências da aplicação; -
O arquivo
settings.py
com o parâmetroALLOWED_HOSTS
preenchido.
Parte 1 - Configurando o Apache Python na Topologia
🔧 Passo 1 – Montagem da Topologia
Adicione à camada de aplicação o Apache Python. Ajuste os cloudlets reservados e o limite de escalabilidade conforme a necessidade do seu projeto e aplique a alteração.
Opcional: Adicione um NGINX como Load Balancer e/ou um banco de dados (ex: MariaDB, MySQL).
Se utilizar o NGINX, siga a documentação específica.
📦 Passo 2 – Métodos de Deploy da Aplicação
A SaveinCloud oferece os seguintes métodos de deploy:
-
Arquivo local (.zip, .tar, etc.)
-
URL externa
-
Repositórios Git/SVN
Neste guia, utilizaremos o método via Git.
Selecione o nó Apache Python para iniciar o deploy:
🔓 Deploy via Repositório Público
- Acesse o menu de deploy e escolha a opção Git/SVN:
- Clique em Adicionar novo repositório:
- Após configurar, acompanhe o progresso do deploy:
- Quando finalizado com sucesso, a seguinte mensagem será exibida:
🔐 Deploy via Repositório Privado
- Gere um Personal Access Token no GitHub:
-
Acesse: Settings > Developer settings > Personal access tokens
-
Crie um token com permissão
repo
-
No painel da SaveinCloud, acesse novamente o menu de deploy e selecione Git/SVN.
-
Preencha os dados do repositório:
-
Marque a opção Usar autenticação
-
Insira o usuário e o token gerado
Parte 2 - Configuração do Projeto Django
⚙️ Passo 3 – Configurando o Ambiente
settings.py
– Atualizando o ALLOWED_HOSTS
:
ALLOWED_HOSTS = ['*']
wsgi.conf
– Configurando o WSGI (Apache):
Edite o arquivo wsgi.conf
na plataforma:
WSGIDaemonProcess apache user=apache group=apache processes=2 threads=10 python-path="/var/www/webroot/ROOT" python-home="/var/www/webroot/ROOT/venv"
ServerRoot "/var/www/webroot/ROOT/"
DocumentRoot "/var/www/webroot/ROOT/"
Variável WSGI_SCRIPT
– Definindo caminho do wsgi.py
Acesse a aba Variáveis da plataforma e configure:
WSGI_SCRIPT=/var/www/webroot/ROOT/seu_app/wsgi.py
🐍 Passo 4 – Criando e Ativando a Virtualenv
Abra o WebSSH:
cd /var/www/webroot/ROOT
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
deactivate
⚠️ Versões do Django acima de 5.0 não são compatíveis com SQLite.
🔎 Passo 5 – Testando a Aplicação
Reinicie o ambiente e acesse a URL pública para testar.
Se tudo estiver correto, sua aplicação Django estará acessível.
📘 Documentação complementar:
🛠️ Troubleshooting
❌ 1. Erro: OperationalError: no such table: ...
Causa: Migrações não aplicadas.
Solução:
python manage.py makemigrations
python manage.py migrate
❌ 2. Erro: ModuleNotFoundError: No module named 'django'
Causa: venv desativada ou Django não instalado.
Solução:
source venv/bin/activate
pip install django
❌ 3. Aplicação não carrega após reinício
Causa comum: Caminho incorreto do WSGI_SCRIPT
ou erro no wsgi.conf
.
Verifique:
-
python-path
,python-home
-
ServerRoot
,DocumentRoot
-
Caminho do
wsgi.py