Installare ODOO

Odoo è un software opensource di gestione aziendale all-in-one che viene fornito con una suite di varie applicazioni aziendali per vari usi come l’e-commerce, la gestione dei progetti, l’helpdesk, la contabilità, l’inventario, e un costruttore di siti web per citarne alcuni.

Seguendo queste istruzioni, imparerete come installare Odoo (ERP e CRM Open Source) su CentOS 8 e RHEL 8.

Passo A: Aggiornare il sistema e installare il repository EPEL

  1. Il primo passo nell’installazione di Odoo è quello di installare il repository EPEL che fornisce un insieme di pacchetti extra per enterprise Linux. Ma prima, assicurati di aggiornare il sistema:
[localhost ~]# dnf update
  1. Una volta completato l’aggiornamento del sistema, installa il repository EPEL come mostrato.
[localhost ~]# dnf install epel-release
==================================================================================
 Package          Architecture             Version       Repository          Size
==================================================================================
Installing:
 epel-release     noarch                   8-11.el8      extras              24 k
Transaction Summary
==================================================================================
Install  1 Package

Total download size: 24 k
Installed size: 35 k
Is this ok [y/N]: y

Passo 2: installare Python3 e altre dipendenze

Successivamente, installa Python 3 e le altre dipendenze richieste da Odoo come mostrato.

[localhost ~]# dnf install python36 python36-devel git gcc wget nodejs libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel

Passo 3: installare e configurare PostgreSQL in CentOS 8

  1. PostgreSQL è un sistema di gestione di database relazionali libero e opensource utilizzato in una vasta gamma di applicazioni per memorizzare dati. Odoo richiede PostgreSQL e per installarlo, eseguire il comando.
# dnf install postgresql-server postgresql-contrib
[localhost ~]# dnf install -y postgresql-server
  1. Successivamente, inizializzate un nuovo cluster di database PostgreSQL.
[localhost ~]# postgresql-setup initdb
  1. Una volta che il cluster di database è stato inizializzato, riavvia e abilita PostgreSQL come mostrato.
[localhost ~]# systemctl restart postgresql
  1. Per confermare che il database è attivo e funzionante, esegui.
[localhost ~]# systemctl status postgresql

Passo 4: installare lo strumento Wkhtmltopdf in CentOS 8

  1. Affinché Odoo stampi rapporti in PDF, richiede un pacchetto chiamato Wkhtmltopdf. Questo è usato per rendere HTML in PDF e altri formati di immagine. Il pacchetto rpm è disponibile su Github e si può installare come mostrato.
[localhost ~]# dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpm

Passo 5: installare e configurare Odoo in CentOS 8

  1. Aggiungeremo un nuovo utente di sistema che useremo per eseguire il servizio Odoo. In questa illustrazione, creeremo un utente chiamato Odoo, tuttavia, sentitevi liberi di scegliere un nome utente arbitrario. La home directory si trova nella directory /opt/odoo.
[localhost ~]# useradd -m -U -r -s /bin/bash odoo -d /opt/odoo
  1. Per iniziare l’installazione di Odoo, passa prima all’utente Odoo che abbiamo creato sopra.
[localhost ~]# su - odoo
  1. Poi clona il repository git.
[odoo@localhost ~]$ git clone https://www.github.com/odoo/odoo --depth 1 --branch 14.0 /opt/odoo/odoo14
  1. Successivamente, clonate l’ambiente virtuale come mostrato.
[odoo@localhost ~]$ cd /opt/odoo
[odoo@localhost ~]$ python3 -m venv odoo14-venv
  1. Una volta creato l’ambiente virtuale, attivatelo usando il seguente comando.
[odoo@localhost ~]$ source odoo14-venv/bin/activate

Come puoi osservare, il prompt cambia come mostrato.

(odoo14-venv) [odoo@localhost ~]$
  1. All’interno dell’ambiente virtuale, installate i moduli Python necessari affinché l’installazione di Odoo vada a buon fine.
(odoo14-venv) [odoo@localhost ~]$ pip3 install -r odoo14/requirements.txt
  1. Una volta completata l’installazione dei moduli Python, uscite dall’ambiente virtuale e tornate all’utente sudo.
(odoo14-venv) [odoo@localhost ~]$ deactivate && exit
  1. Anche se opzionale, la migliore pratica impone l’installazione di moduli personalizzati in una directory separata. Pertanto, procederemo a creare una directory per i moduli personalizzati e successivamente assegneremo la proprietà della directory all’utente ‘Odoo’.
[localhost ~]# mkdir /opt/odoo/odoo14-custom-addons
[localhost ~]# chown -R odoo:odoo /opt/odoo/odoo14-custom-addons
  1. Allo stesso modo, creeremo una directory di log personalizzata e un file di log come mostrato.
[localhost ~]# mkdir /var/log/odoo14
[localhost ~]# touch /var/log/odoo14/odoo.log
[localhost ~]# chown -R odoo:odoo /var/log/odoo14/
  1. Successivamente, crea un file di configurazione personalizzato per Odoo come mostrato.
[localhost ~]# vim /etc/odoo.conf

Incolla la seguente configurazione e salva il file.

[options]
;"password_forte" è la password che permette le operazioni sul database:
admin_passwd = password_forte
db_host = False
db_port = False
db_user = odoo
db_password = False
xmlrpc_port = 8069
longpolling_port = 8072
logfile = /var/log/odoo14/odoo.log
logrotate = True
addons_path = /opt/odoo/odoo14/addons,/opt/odoo/odoo14-custom-addons

Assicurati di sostituire la password_forte con la tua password preferita.

Passo 6: Creare un file di unità Odoo Systemd

  1. Ora, create un file di unità systemd per Odoo.
[localhost ~]# vi /etc/systemd/system/odoo14.service

Incolla la seguente configurazione e salva il file.

[Unit]
Description=Odoo14
#Requires=postgresql-10.6.service
#After=network.target postgresql-10.6.service

[Service]
Type=simple
SyslogIdentifier=odoo14
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/opt/odoo/odoo14-venv/bin/python3 /opt/odoo/odoo14/odoo-bin -c /etc/odoo.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target
  1. Ricaricate systemd delle nuove modifiche apportate al file.
[localhost ~]# systemctl daemon-reload
  1. Poi avviate e abilitate Odoo come mostrato.
[localhost ~]# systemctl start odoo13
[localhost ~]# systemctl enable odoo13
  1. Per confermare lo stato di Odoo, eseguite il comando
[localhost ~]# systemctl status odoo14
  1. Puoi anche usare il comando netstat per controllare se Odoo è in ascolto sulla porta 8069 – che è la sua porta predefinita.
[localhost ~]# netstat -pnltu | grep 8069
  1. Affinché Odoo sia accessibile su un browser, apri la porta attraverso il firewall.
[localhost ~]# firewall-cmd --add-port=8069/tcp --zone=public --permanent
[localhost ~]# firewall-cmd --reload

Passo 7: Installare Nginx come Reverse Proxy per Odoo

  1. Infine, installeremo il server web Nginx che agirà come reverse proxy per la nostra istanza di Odoo. Quindi, eseguite il comando
[localhost ~]# dnf install nginx
  1. Successivamente, create un nuovo file host virtuale.
[localhost ~]# vi /etc/nginx/conf.d/odoo14.conf

e incollare la seguente configurazione come mostrato.

upstream odoo {
 server 127.0.0.1:8069;
}
server {
    listen 80;
    server_name server-IP;

    access_log /var/log/nginx/odoo14.access.log;
    error_log /var/log/nginx/odoo14.error.log;

        location / {
        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;

        proxy_redirect off;
        proxy_pass http://odoo;
    }
location ~* /web/static/ {
        proxy_cache_valid 200 90m;
        proxy_buffering on;
        expires 864000;
        proxy_pass http://odoo;
    }
    gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
    gzip on;
}

Sostituire con “server-IP” con l’ip (o il nome) del server. Salvare e uscire dal file di configurazione.

  1. Ora avviate e abilitate il webserver Nginx.
[localhost ~]# systemctl start nginx
[localhost ~]# systemctl enable nginx
  1. Confermare che Nginx è in esecuzione come mostrato.
[localhost ~]# systemctl status nginx

A questo punto, abbiamo finito con la configurazione. L’ultimo passo è quello di finalizzare la configurazione su un browser web.

Passo 8: Finalizzare la configurazione di Odoo

  1. Lancia un browser web e visita l’IP del tuo server come mostrato.
http://server-ip/

Verrà visualizzata una pagina web simile a quella sottostante. Per la password principale, usa la password specificata nel passo 5 durante la creazione di un file di configurazione Odoo personalizzato. Poi procedi a compilare tutte le altre voci e clicca sul pulsante ‘Create database’.