GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Odoo ERP 13 su CentOS 8

Odoo è un software ERP gratuito, open source e più popolare che offre un'ampia gamma di applicazioni aziendali tra cui gestione delle relazioni con i clienti (CRM), pipeline di vendita, gestione dei progetti, produzione , fatturazione, contabilità, eCommerce e molti altri. È un'applicazione basata sul Web e completa di funzionalità che ti aiuta a mantenere l'ERP in qualsiasi azienda. Odoo viene fornito con 30 moduli principali e più di 4500 moduli creati dalla community che ti aiutano a personalizzarlo come un piccolo negozio per un'azienda di livello aziendale.

In questo tutorial impareremo come installare e configurare Odoo 13 con Nginx come proxy inverso sul server CentOS 8.

Requisiti

  • Un server con CentOS 8 con minimo 2 GB di RAM.
  • Un nome di dominio valido puntato all'IP del tuo server. In questo tutorial utilizzeremo il dominio exmaple.com..
  • Sul server è configurata una password di root.

Per iniziare

Innanzitutto, aggiorna il sistema e installa il repository EPEL con il seguente comando:

dnf update
dnf install epel-release

Successivamente, dovrai installare alcuni strumenti e dipendenze necessari per creare Odoo sul tuo sistema.

Puoi installarli tutti con il seguente comando:

dnf install python36 python36-devel git gcc wget nodejs libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel

Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.

Crea utente Odoo

Successivamente, dovrai creare un nuovo utente di sistema con nome odoo e home directory /opt/odoo usando il seguente comando:

useradd -m -U -r -d /opt/odoo -s /bin/bash odoo

Una volta terminato, puoi procedere al passaggio successivo.

Installa e configura PostgreSQL

Odoo utilizza PostgreSQL per archiviare i propri dati. Quindi dovrai installare PostgreSQL sul tuo server. Puoi installarlo con il seguente comando:

dnf install postgresql postgresql-server postgresql-contrib

Una volta installato, inizializzare il database con il seguente comando:

/usr/bin/postgresql-setup initdb

Dovresti ottenere il seguente output:

 * Initializing database in '/var/lib/pgsql/data'
 * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log

Quindi, avvia il servizio PostgreSQL e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

systemctl start postgresql
systemctl enable postgresql

Ora puoi verificare PostgreSQL usando il seguente comando:

systemctl status postgresql

Dovresti vedere il seguente output:

? postgresql.service - PostgreSQL database server
   Loaded: loaded (/usr/lib/systemd/system/postgresql.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-12-02 01:01:44 EST; 6s ago
  Process: 31805 ExecStartPre=/usr/libexec/postgresql-check-db-dir postgresql (code=exited, status=0/SUCCESS)
 Main PID: 31808 (postmaster)
    Tasks: 8 (limit: 12552)
   Memory: 16.5M
   CGroup: /system.slice/postgresql.service
           ??31808 /usr/bin/postmaster -D /var/lib/pgsql/data
           ??31809 postgres: logger process   
           ??31811 postgres: checkpointer process   
           ??31812 postgres: writer process   
           ??31813 postgres: wal writer process   
           ??31814 postgres: autovacuum launcher process   
           ??31815 postgres: stats collector process   
           ??31816 postgres: bgworker: logical replication launcher   

Successivamente, dovrai creare un nuovo utente PostgreSQL con lo stesso nome dell'utente di sistema come mostrato di seguito:

su - postgres -c "createuser -s odoo"

Installa Wkhtmltopdf

Successivamente, dovrai installare lo strumento wkhtmltopdf nel tuo sistema in modo che Odoo possa stampare report PDF. Puoi installarlo con il seguente comando:

wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
dnf localinstall wkhtmltox-0.12.5-1.centos7.x86_64.rpm

Una volta installato, puoi procedere al passaggio successivo.

Installa e configura Odoo 13

Per prima cosa, passa all'utente Odoo con il seguente comando:

su - odoo

Quindi, scarica l'ultima versione di Odoo 13 dal repository Git usando il comando git:

git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 /opt/odoo/odoo13

Quindi, crea un nuovo ambiente virtuale per l'istanza di Odoo 13 con il seguente comando:

cd /opt/odoo
python3 -m venv odoo13-venv

Successivamente, attiva l'ambiente virtuale con il seguente comando:

source odoo13-venv/bin/activate

Dovresti ottenere il seguente output:

(odoo13-venv) [[email protected] ~]$

Quindi, installa tutti i moduli Python richiesti per Odoo 13 con il seguente comando:

pip3 install -r odoo13/requirements.txt

Una volta installati tutti i moduli richiesti, disattivare l'ambiente virtuale con il seguente comando:

deactivate

Infine, esci dall'utente Odoo con il seguente comando:

exit

Quindi, crea una nuova directory per archiviare i moduli personalizzati di Odoo e i log di Odoo:

mkdir /opt/odoo/odoo13-custom-addons
mkdir /var/log/odoo13
touch /var/log/odoo13/odoo.log

Quindi, cambia la proprietà di entrambe le directory all'utente odoo con il seguente comando:

chown -R odoo:odoo /opt/odoo/odoo13-custom-addons
chown -R odoo:odoo /var/log/odoo13/

Quindi, crea un nuovo file di configurazione per Odoo 13 usando il seguente comando:

nano /etc/odoo.conf

Aggiungi le seguenti righe:

[options]
admin_passwd = [email protected]
db_host = False
db_port = False
db_user = odoo
db_password = False
xmlrpc_port = 8069
logfile = /var/log/odoo13/odoo.log
logrotate = True
addons_path = /opt/odoo/odoo13/addons,/opt/odoo/odoo13-custom-addons

Salva e chiudi il file quando hai finito.

Crea un file Systemd Service per Odoo 13

Successivamente, dovrai creare un nuovo file di unità systemd per Odoo 13 per gestire il servizio Odoo.

Puoi crearlo con il seguente comando:

nano /etc/systemd/system/odoo13.service

Aggiungi le seguenti righe:

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

[Service]
Type=simple
SyslogIdentifier=odoo13
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/opt/odoo/odoo13-venv/bin/python3 /opt/odoo/odoo13/odoo-bin -c /etc/odoo.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-reload

Quindi, avvia il servizio Odoo e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

systemctl start odoo13
systemctl enable odoo13

Puoi anche verificare lo stato di Odoo con il seguente comando:

systemctl status odoo13

Dovresti ottenere il seguente output:

? odoo13.service - Odoo13
   Loaded: loaded (/etc/systemd/system/odoo13.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-12-02 01:15:43 EST; 2s ago
 Main PID: 17022 (python3)
    Tasks: 4 (limit: 12552)
   Memory: 63.7M
   CGroup: /system.slice/odoo13.service
           ??17022 /opt/odoo/odoo13-venv/bin/python3 /opt/odoo/odoo13/odoo-bin -c /etc/odoo.conf

Dec 02 01:15:43 centos8 systemd[1]: Started Odoo13.

Per impostazione predefinita, Odoo è in ascolto sulla porta 8069. Puoi verificarlo con il seguente comando:

netstat -plntu | grep 8069

Dovresti vedere il seguente output:

tcp        0      0 0.0.0.0:8069            0.0.0.0:*               LISTEN      17022/python3

Configura Nginx come proxy inverso per Odoo 13

Successivamente, dovrai installare e configurare Nginx come proxy inverso per l'istanza di Odoo 13.

Innanzitutto, installa il server web Nginx con il seguente comando:

dnf install nginx

Una volta installato, crea un nuovo file di configurazione dell'host virtuale con il seguente comando:

nano /etc/nginx/conf.d/odoo13.conf

Aggiungi le seguenti righe:

upstream odoo {
 server 127.0.0.1:8069;
}
server {
    listen 80;
    server_name example.com;

    access_log /var/log/nginx/odoo13.access.log;
    error_log /var/log/nginx/odoo13.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;
}

Salva e chiudi il file quando hai finito. Quindi, avvia il servizio Nginx e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

systemctl start nginx
systemctl enable nginx

Puoi verificare lo stato del servizio Nginx utilizzando il seguente comando:

systemctl status nginx

Dovresti vedere il seguente output:

? nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-12-02 01:25:15 EST; 6s ago
  Process: 17244 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 17241 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 17239 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 17245 (nginx)
    Tasks: 3 (limit: 12552)
   Memory: 5.4M
   CGroup: /system.slice/nginx.service
           ??17245 nginx: master process /usr/sbin/nginx
           ??17246 nginx: worker process
           ??17247 nginx: worker process

Dec 02 01:25:15 centos8 systemd[1]: Starting The nginx HTTP and reverse proxy server...
Dec 02 01:25:15 centos8 nginx[17241]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Dec 02 01:25:15 centos8 nginx[17241]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Dec 02 01:25:15 centos8 systemd[1]: Started The nginx HTTP and reverse proxy server.

Configura Firewall

Successivamente, dovrai consentire al servizio Nginx tramite firewalld di accedere all'istanza Odoo 13 dal sistema remoto.

Puoi eseguire il comando seguente per consentire il servizio Nginx tramite firewalld:

firewall-cmd --permanent --zone=public --add-service=nginx
firewall-cmd --reload

Per impostazione predefinita, SELinux è abilitato in CentOS 8. Quindi dovrai consentire HTTP tramite SELinux. Puoi consentirlo con il seguente comando:

setsebool -P httpd_can_network_connect on

Accedi all'interfaccia web di Odoo 13

Ora Odoo 13 è installato e configurato. È ora di accedere all'interfaccia web di Odoo 13.

Apri il tuo browser web e digita l'URL http://example.com . Verrai reindirizzato alla seguente pagina:

Ora, fornisci la tua password principale, nome del database, e-mail, password, paese e fai clic su Crea database pulsante. Verrai reindirizzato alla pagina Amministrazione di Odoo 13:

Conclusione

Nel tutorial sopra, hai imparato come installare e configurare Odoo 13 sul server CentOS 8. Hai anche imparato a configurare Nginx come proxy inverso per Odoo 13. Ora puoi personalizzare la tua istanza Odoo 13 in base alle tue esigenze aziendali.


Cent OS
  1. Come installare Odoo 9 su CentOS 7

  2. Installa Odoo 10 su CentOS 7

  3. Come installare Odoo 12 su CentOS 7

  4. Come installare Odoo 13 su CentOS 8

  5. Come installare Odoo 13 su un server CentOS 8

Come installare il software Odoo ERP su Ubuntu 15.04

Come installare il software Odoo ERP su Ubuntu 16.04

Come installare Odoo (ERP e CRM Open Source) su CentOS 8

Come installare Odoo su CentOS 7

Come installare Odoo su CentOS 8

Come installare Odoo (ERP e CRM Open Source) su CentOS 8