wils@web ~ $ cat ~/ajuda/guia-pratico-para-fazer-deploy-de-aplicacoes-python-usando-gunicorn-20-1-0-com-nginx-melhores-praticas.md

Servidores

Guia prático para fazer deploy de aplicações Python usando Gunicorn 20.1.0 com Nginx: Melhores práticas

atualizado em 03/09/2026

Este guia prático aborda o processo de deployment de aplicações Python utilizando Gunicorn 20.1.0 e Nginx, destacando as melhores práticas para garantir performance e segurança.

Introdução

Gunicorn é um servidor WSGI leve e eficiente que permite rodar aplicações Python, enquanto o Nginx atua como um servidor web reverso, gerenciando conexões e melhorando a performance.

Pré-requisitos

  • Python 3.x instalado
  • Pip para gerenciamento de pacotes
  • Gunicorn 20.1.0 instalado
  • Nginx instalado

Passo a passo para o deployment

1. Instalação do Gunicorn

pip install gunicorn==20.1.0

2. Estrutura do projeto

Organize seu projeto da seguinte forma:

meu_projeto/ 
├── app/
│ └── main.py
├── requirements.txt
└── wsgi.py

3. Criando o arquivo WSGI

O arquivo wsgi.py deve conter:

from app.main import app 
if __name__ == '__main__':
app.run()

4. Executando o Gunicorn

Execute o Gunicorn com o seguinte comando:

gunicorn --bind 0.0.0.0:8000 wsgi:app

5. Configurando o Nginx

Crie um arquivo de configuração para o Nginx:

sudo nano /etc/nginx/sites-available/meu_projeto

Adicione o seguinte conteúdo:

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;
}
}

6. Ativando a configuração do Nginx

sudo ln -s /etc/nginx/sites-available/meu_projeto /etc/nginx/sites-enabled/ 
sudo nginx -t
sudo systemctl restart nginx

Conclusão

Com este guia, você deve ser capaz de fazer o deploy de sua aplicação Python utilizando Gunicorn e Nginx. Lembre-se de monitorar o desempenho e ajustar as configurações conforme necessário.

Dica: Considere utilizar um sistema de gerenciamento de processos como o Supervisor para manter o Gunicorn em execução.

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.