wils@web ~ $ cat ~/ajuda/guia-pratico-para-deploy-de-aplicacoes-python-usando-gunicorn-20-1-em-nginx-1-24.md
ServidoresGuia prático para deploy de aplicações Python usando Gunicorn 20.1 em Nginx 1.24
Este guia prático tem como objetivo fornecer um passo a passo para realizar o deploy de aplicações Python utilizando Gunicorn 20.1 como servidor WSGI e Nginx 1.24 como servidor web reverso.
Pré-requisitos
- Servidor Linux (Ubuntu, CentOS, etc.)
- Python 3.x instalado
- pip e virtualenv instalados
- Acesso root ou sudo ao servidor
Passo 1: Instalação do Gunicorn
Primeiro, você deve instalar o Gunicorn no ambiente virtual da sua aplicação.
cd /caminho/da/sua/aplicacao
python3 -m venv venv
source venv/bin/activate
pip install gunicorn==20.1
Passo 2: Testando o Gunicorn
Teste se o Gunicorn está funcionando corretamente com o seguinte comando:
gunicorn --bind 0.0.0.0:8000 nome_do_seu_arquivo:app
Substitua nome_do_seu_arquivo pelo nome do arquivo Python que contém sua aplicação Flask ou Django.
Passo 3: Instalando o Nginx
Instale o Nginx utilizando o gerenciador de pacotes da sua distribuição:
sudo apt update
sudo apt install nginx
Passo 4: Configurando o Nginx
Crie um arquivo de configuração para sua aplicação no diretório de sites disponíveis do Nginx:
sudo nano /etc/nginx/sites-available/sua_aplicacao
Adicione a seguinte configuração:
server {
listen 80;
server_name seu_dominio.com;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Ative a configuração criando um link simbólico:
sudo ln -s /etc/nginx/sites-available/sua_aplicacao /etc/nginx/sites-enabled/
Passo 5: Testando a Configuração do Nginx
Verifique se a configuração do Nginx está correta:
sudo nginx -t
Passo 6: Reiniciando o Nginx
Reinicie o Nginx para aplicar as alterações:
sudo systemctl restart nginx
Conclusão
Agora sua aplicação Python deve estar rodando com Gunicorn e Nginx. Para garantir a disponibilidade, considere configurar um gerenciador de processos como o Supervisor ou Systemd para manter o Gunicorn em execução.
Dica: Utilize HTTPS em produção com Certbot para obter certificados SSL gratuitos.
Precisa de ajuda com isso no seu servidor? A gente resolve pra você.
falar no WhatsApp →// deu erro ou não funcionou?
Achou algo errado neste manual?
Conta pra gente o que deu errado ou qual erro apareceu — a gente corrige. Se quiser retorno, deixe seu contato.