wils@web ~ $ cat ~/ajuda/guia-pratico-para-fazer-o-deploy-de-aplicacoes-django-usando-gunicorn-e-nginx-no-ubuntu-22-04.md

Desenvolvimento

Guia prático para fazer o deploy de aplicações Django usando Gunicorn e Nginx no Ubuntu 22.04

atualizado em 06/09/2026

Este guia prático tem como objetivo fornecer um passo a passo para realizar o deploy de aplicações Django utilizando Gunicorn e Nginx no Ubuntu 22.04.

Pré-requisitos

  • Ubuntu 22.04 instalado
  • Python 3.8 ou superior
  • Pip e virtualenv instalados
  • Acesso root ou sudo

Passo 1: Instalar dependências

Primeiro, instale as dependências necessárias:

sudo apt update
sudo apt install python3-pip python3-dev libpq-dev nginx

Passo 2: Criar e configurar um ambiente virtual

Crie um ambiente virtual para sua aplicação Django:

mkdir ~/meu_projeto && cd ~/meu_projeto
python3 -m venv venv
source venv/bin/activate

Passo 3: Instalar Django e Gunicorn

Instale o Django e o Gunicorn dentro do ambiente virtual:

pip install django gunicorn

Passo 4: Criar um projeto Django

Crie um novo projeto Django:

django-admin startproject meu_site

Passo 5: Configurar Gunicorn

Teste o Gunicorn para garantir que tudo está funcionando:

cd meu_site
gunicorn --bind 0.0.0.0:8000 meu_site.wsgi:application

Passo 6: Configurar Nginx

Crie um arquivo de configuração para Nginx:

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

Adicione o seguinte conteúdo:

server { listen 80; server_name seu_dominio.com; location = /favicon.ico { access_log off; log_not_found off; } 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:

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

Passo 7: Iniciar Gunicorn como um serviço

Crie um arquivo de serviço para o Gunicorn:

sudo nano /etc/systemd/system/gunicorn.service

Adicione o seguinte conteúdo:

[Unit] Description=gunicorn daemon After=network.target [Service] User=seu_usuario Group=www-data WorkingDirectory=/home/seu_usuario/meu_projeto/meu_site ExecStart=/home/seu_usuario/meu_projeto/venv/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/seu_usuario/meu_projeto/meu_site.sock meu_site.wsgi:application [Install] WantedBy=multi-user.target

Inicie e habilite o serviço:

sudo systemctl start gunicorn
sudo systemctl enable gunicorn

Conclusão

Seu aplicativo Django agora está em execução com Gunicorn e Nginx. Para uma melhor performance, considere configurar o HTTPS usando Certbot.

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.