Pular para o conteúdo

Instalação Odoo 18, Nginx e Certificado SSL no Ubuntu 22.04 Server

Pré-requisitos

  • Servidor Ubuntu 22.04 (Recomendação oficial: mínimo de 1 CPU e 2GB de RAM).
  • Nome de domínio apontando para o servidor.

Instalando o Odoo

apt update && apt upgrade -y
apt install postgresql -y
service postgresql start
systemctl enable postgresql

apt install wkhtmltopdf -y

wget -q -O - https://nightly.odoo.com/odoo.key | sudo gpg --dearmor -o /usr/share/keyrings/odoo-archive-keyring.gpg
echo 'deb [signed-by=/usr/share/keyrings/odoo-archive-keyring.gpg] https://nightly.odoo.com/18.0/nightly/deb/ ./' | sudo tee /etc/apt/sources.list.d/odoo.list
apt update 
apt install odoo -y
systemctl start odoo
systemctl enable odoo

Instalando e Configurando o NGINX

apt install nginx -y
systemctl start nginx
systemctl enable nginx

nano /etc/nginx/sites-available/seudominio.com.br

Configuração do NGINX

Adicione o seguinte conteúdo ao arquivo:

upstream odoo {
    server 127.0.0.1:8069;
}

server {
    listen 80;
    server_name seudominio.com.br;

    access_log /var/log/nginx/odoo_access.log;
    error_log /var/log/nginx/odoo_error.log;

    proxy_buffers 16 64k;
    proxy_buffer_size 128k;

    location / {
        proxy_pass http://odoo;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-Host $host;
        proxy_redirect off;
        proxy_request_buffering off;
        proxy_connect_timeout  36000s;
        proxy_read_timeout  36000s;
        proxy_send_timeout  36000s;
        send_timeout  36000s;
        client_max_body_size 10240m;
    }

    location ~* /web/static/ {
        proxy_cache_valid 200 60m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odoo;
    }

    location /longpolling {
        proxy_pass http://odoo;
        proxy_connect_timeout 600s;
        proxy_send_timeout 600s;
        proxy_read_timeout 600s;
    }

    location /websocket {
        proxy_pass http://odoo;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
    }
}
ln -s /etc/nginx/sites-available/seudominio.com.br /etc/nginx/sites-enabled/
systemctl restart nginx

Instalando o Certificado SSL com Certbot

apt install certbot python3-certbot-nginx -y
certbot --nginx -d seudominio.com.br

Insira seu e-mail quando solicitado: [email protected]

Configuração adicional no Odoo

nano /etc/odoo/odoo.conf

Adicione a seguinte linha no final do arquivo:

proxy_mode = True

Edite o arquivo de configuração do Nginx novamente:

nano /etc/nginx/sites-available/seudominio.com.br

Adicione a seguinte diretiva sob as diretrizes geradas pelo Certbot:

add_header 'Content-Security-Policy' 'upgrade-insecure-requests';

Reinicie os serviços:

systemctl restart nginx
systemctl restart odoo

Parabéns! Agora você tem o Odoo 18 rodando no seu servidor Ubuntu 22.04 com Nginx como proxy reverso e um certificado SSL válido.

Corrigir hora no Zabbix