wils@web ~ $ cat ~/ajuda/como-criar-um-ambiente-de-producao-para-aplicacoes-django-usando-gunicorn-e-nginx-no-ubuntu-22-04.md
DesenvolvimentoComo criar um ambiente de produção para aplicações Django usando Gunicorn e Nginx no Ubuntu 22.04
Este manual descreve como criar um ambiente de produção para aplicações Django usando 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
sudo apt updatesudo apt install python3-pip python3-dev libpq-dev nginxPasso 2: Criar e configurar o ambiente virtual
mkdir ~/meu_projeto && cd ~/meu_projetopython3 -m venv venvsource venv/bin/activatepip install django gunicorn psycopg2-binaryPasso 3: Criar um projeto Django
django-admin startproject meu_projeto .python manage.py migratepython manage.py collectstaticPasso 4: Configurar Gunicorn
gunicorn --bind 0.0.0.0:8000 meu_projeto.wsgi:applicationPasso 5: Criar um serviço systemd para Gunicorn
sudo nano /etc/systemd/system/gunicorn.service[Unit]Description=gunicorn daemonAfter=network.target[Service]User=seu_usuarioGroup=www-dataWorkingDirectory=/home/seu_usuario/meu_projetoExecStart=/home/seu_usuario/meu_projeto/venv/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/seu_usuario/meu_projeto/meu_projeto.sock meu_projeto.wsgi:application[Install]WantedBy=multi-user.targetPasso 6: Iniciar e habilitar o Gunicorn
sudo systemctl start gunicornsudo systemctl enable gunicornPasso 7: Configurar o Nginx
sudo nano /etc/nginx/sites-available/meu_projetoserver { listen 80; server_name seu_dominio.com; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /home/seu_usuario/meu_projeto; } location / { include proxy_params; proxy_pass unix:/home/seu_usuario/meu_projeto/meu_projeto.sock; }}sudo ln -s /etc/nginx/sites-available/meu_projeto /etc/nginx/sites-enabledsudo nginx -tsudo systemctl restart nginxConclusão
Seu ambiente de produção Django está configurado. Para maior segurança, considere usar HTTPS com Let's Encrypt.
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.