Installazione Odoo · 6 min read · Sep 29, 2025
Installa Odoo su CentOS con Nginx
Odoo è un sistema ERP e CRM open-source utilizzato per gestire le esigenze di base dell’azienda, inclusi la gestione dei materiali e del magazzino, le risorse umane, la finanza, la contabilità, le vendite, l’inventario e molte altre funzionalità aziendali. È costruito utilizzando Python e utilizza PostgreSQL come database. L’ultima versione di Odoo 14 ha funzionalità utili, tra cui un nuovo costruttore di siti web, nuovi strumenti di business intelligence, nuovi e migliorati menu di inventario e MRP, e altro ancora.
Questo tutorial ti mostrerà come installare Odoo 14 con Nginx su CentOS 8.
Prerequisiti
- Un server che esegue CentOS 8.
- Un nome di dominio valido puntato all’IP del tuo server.
- Una password di root configurata sul server.
Iniziare
Prima di iniziare, dovrai installare Python, wkhtmltopdf e altre dipendenze richieste nel tuo sistema. Esegui il seguente comando per installarli tutti:
dnf install python3 redhat-rpm-config libxslt-devel bzip2-devel openldap-devel python3-devel git gcc libjpeg-devel freetype-devel curl unzip -y
dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpmUna volta installate tutte le dipendenze, puoi procedere al passaggio successivo.
Installa e configura PostgreSQL
Odoo utilizza PostgreSQL come backend del database. Quindi dovrai installarlo nel tuo sistema. Esegui il seguente comando per installare PostgreSQL:
dnf install postgresql postgresql-server postgresql-contrib -yUna volta installato PostgreSQL, inizializza il database con il seguente comando:
postgresql-setup initdbDovresti vedere il seguente output:
WARNING: using obsoleted argument syntax, try --help
WARNING: arguments transformed to: postgresql-setup --initdb --unit postgresql
* Initializing database in '/var/lib/pgsql/data'
* Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
Successivamente, avvia il servizio PostgreSQL e abilitalo per avviarsi al riavvio del sistema:
systemctl start postgresql
systemctl enable postgresqlSuccessivamente, crea un nuovo utente per odoo con il seguente comando:
su - postgres -c "createuser -s odoo14"Una volta terminato, puoi procedere al passaggio successivo.
Installa Odoo 14
Si consiglia di installare e eseguire Odoo come utente autonomo. Puoi creare un nuovo utente per Odoo con il seguente comando:
useradd -m -U -r -d /opt/odoo14 -s /bin/bash odoo14Nota: l’utente Odoo e l’utente PostgreSQL devono essere gli stessi.
Successivamente, passa all’utente Odoo 14 e scarica l’ultima versione di Odoo 14 con il seguente comando:
su - odoo14
git clone https://www.github.com/odoo/odoo --depth 1 --branch 14.0 /opt/odoo14/odoo14Una volta completato il download, cambia la directory in odoo14 e crea un nuovo ambiente virtuale Python con il seguente comando:
cd /opt/odoo14
python3 -m venv odooenvSuccessivamente, attiva l’ambiente virtuale con il seguente comando:
source odooenv/bin/activateSuccessivamente, installa altre dipendenze Python con il seguente comando:
(odooenv) [odoo14@centos8 ~]$ pip3 install wheel
(odooenv) [odoo14@centos8 ~]$ pip3 install -r odoo14/requirements.txtSuccessivamente, disattiva l’ambiente virtuale ed esci dall’utente Odoo con il seguente comando:
(odooenv) [odoo14@centos8 ~]$ deactivate
exitUna volta terminato, puoi procedere al passaggio successivo.
Configura Odoo 14
Successivamente, dovrai creare una directory per memorizzare gli addon di Odoo 14. Puoi crearla con il seguente comando:
mkdir /opt/odoo14/odoo14-custom-addonsSuccessivamente, imposta la proprietà corretta sulla directory degli addon:
chown -R odoo14:odoo14 /opt/odoo14/odoo14-custom-addonsSuccessivamente, crea una directory e un file di log per Odoo 14 e imposta la proprietà corretta:
mkdir /var/log/odoo14
touch /var/log/odoo14/odoo14.log
chown -R odoo14: /var/log/odoo14/Successivamente, crea un file di configurazione per Odoo 14:
nano /etc/odoo14.confAggiungi le seguenti righe:
[options]
; Questa è la password che consente operazioni sul database:
admin_passwd = your_master_password
db_host = False
db_port = False
db_user = odoo14
db_password = False
xmlrpc_port = 8069
; longpolling_port = 8072
logfile = /var/log/odoo14/odoo14.log
logrotate = True
addons_path = /opt/odoo14/odoo14/addons,/opt/odoo14/odoo14-custom-addons
Salva e chiudi il file quando hai finito.
Crea un file di unità Systemd per Odoo 14
Successivamente, dovrai creare un file di servizio systemd per gestire il servizio Odoo 14. Puoi crearlo con il seguente comando:
nano /etc/systemd/system/odoo14.serviceAggiungi le seguenti righe:
[Unit]
Description=Odoo14
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo14
PermissionsStartOnly=true
User=odoo14
Group=odoo14
ExecStart=/opt/odoo14/odooenv/bin/python3 /opt/odoo14/odoo14/odoo-bin -c /etc/odoo14.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Salva e chiudi il file, quindi ricarica il demone systemd con il seguente comando:
systemctl daemon-reloadSuccessivamente, avvia il servizio Odoo 14 e abilitalo per avviarsi al riavvio del sistema con il seguente comando:
systemctl start odoo14
systemctl enable odoo14Ora puoi controllare lo stato del servizio Odoo 14 con il seguente comando:
systemctl status odoo14Dovresti ottenere il seguente output:
? odoo14.service - Odoo14
Loaded: loaded (/etc/systemd/system/odoo14.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2021-05-01 06:29:56 EDT; 5s ago
Main PID: 26505 (python3)
Tasks: 4 (limit: 25014)
Memory: 91.8M
CGroup: /system.slice/odoo14.service
??26505 /opt/odoo14/odooenv/bin/python3 /opt/odoo14/odoo14/odoo-bin -c /etc/odoo14.conf
May 01 06:29:56 centos8 systemd[1]: Started Odoo14.
Una volta terminato, puoi procedere al passaggio successivo.
Installa e configura Nginx per Odoo 14
A questo punto, Odoo 14 è installato e in esecuzione. Ora, si consiglia di configurare Nginx come proxy inverso per Odoo.
Per prima cosa, installa il pacchetto Nginx con il seguente comando:
dnf install nginx -yUna volta installato Nginx, crea un nuovo file di configurazione del virtual host Nginx con il seguente comando:
nano /etc/nginx/conf.d/odoo14.confAggiungi le seguenti righe:
upstream odoo {
server 127.0.0.1:8069;
}
upstream odoochat {
server 127.0.0.1:8072;
}
server {
listen 80;
server_name odoo.example.com;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
# Proxy headers
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
# file di log
access_log /var/log/nginx/odoo.access.log;
error_log /var/log/nginx/odoo.error.log;
# Gestisci le richieste longpoll
location /longpolling {
proxy_pass http://odoochat;
}
# Gestisci le richieste /
location / {
proxy_redirect off;
proxy_pass http://odoo;
}
# Cache file statici
location ~* /web/static/ {
proxy_cache_valid 200 90m;
proxy_buffering on;
expires 864000;
proxy_pass http://odoo;
}
# Gzip
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
}
Salva e chiudi il file, quindi verifica Nginx per eventuali errori di sintassi con il seguente comando:
ginx -tDovresti ottenere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Successivamente, avvia il servizio Nginx e abilitalo per avviarsi al riavvio del sistema:
systemctl start nginx
systemctl enable nginxPuoi anche verificare Nginx con il seguente comando:
systemctl status nginxDovresti ottenere il seguente output:
? nginx.service - Il server HTTP e proxy inverso nginx
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2021-05-01 06:31:19 EDT; 3s ago
Process: 26627 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
Process: 26625 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
Process: 26623 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
Main PID: 26628 (nginx)
Tasks: 3 (limit: 25014)
Memory: 5.3M
CGroup: /system.slice/nginx.service
??26628 nginx: master process /usr/sbin/nginx
??26629 nginx: worker process
??26630 nginx: worker process
May 01 06:31:19 centos8 systemd[1]: Starting The nginx HTTP and reverse proxy server...
May 01 06:31:19 centos8 nginx[26625]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
May 01 06:31:19 centos8 nginx[26625]: nginx: configuration file /etc/nginx/nginx.conf test is successful
May 01 06:31:19 centos8 systemd[1]: Started The nginx HTTP and reverse proxy server.
Successivamente, modifica il file di configurazione di Odoo 14 e abilita la modalità proxy:
nano /etc/odoo14.confAggiungi la seguente riga:
proxy_mode = True
Salva e chiudi il file, quindi riavvia il servizio Odoo 14 per applicare le modifiche:
systemctl restart odoo14Configura il Firewall
Successivamente, dovrai consentire la porta 80 attraverso il firewall. Puoi consentirlo con il seguente comando:
firewall-cmd --permanent --add-service=httpSuccessivamente, ricarica il firewall per applicare le modifiche:
firewall-cmd --reloadUna volta terminato, puoi procedere al passaggio successivo.
Accedi al Dashboard di Odoo 14
Ora, apri il tuo browser web e accedi all’interfaccia web di Odoo 14 utilizzando l’URL http://odoo.example.com. Sarai reindirizzato alla seguente pagina:

Fornisci la tua password master di Odoo, il database e fai clic sul pulsante Crea database. Dovresti vedere il dashboard di Odoo 14 nella seguente pagina:

Conclusione
Congratulazioni! hai installato con successo Odoo 14 ERP con Nginx su CentOS 8. Ora puoi implementare Odoo nel tuo ambiente di produzione e aumentare la produttività.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.