Odoo è una suite di strumenti software per la gestione aziendale che include, ad esempio, CRM, e-commerce, fatturazione, contabilità, produzione, magazzino, gestione dei progetti e gestione dell'inventario. L'ultima versione di Odoo è Odoo 15 .
Ubuntu 22.04 è l'ultima versione a lungo termine (LTS) rilasciata da Canonical Ltd. la società dietro il software Ubuntu e progetti correlati.
In questo tutorial ti guideremo su come installare odoo 15 sull'ultima versione di LTS Ubuntu.
Procediamo con la guida all'installazione e assumiamo che tu sia già connesso al tuo server.
1 Aggiornamento del sistema
Esegui questo comando per aggiornare il pacchetto installato sul tuo sistema Ubuntu.
sudo apt update -y && apt upgrade -y
2 Installazione delle dipendenze
Dopo aver aggiornato il nostro sistema installiamo le dipendenze necessarie per costruire ed eseguire Odoo 15 sul sistema Ubuntu 22. Per installare le dipendenze esegui questo comando.
sudo apt install python3-pip wget python3-dev python3-venv python3-wheel libxml2-dev libpq-dev libjpeg8-dev liblcms2-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev build-essential git libssl-dev libffi-dev libmysqlclient-dev libjpeg-dev libblas-dev libatlas-base-dev -y
3 Installazione e configurazione del database
I sistemi Odoo utilizzano PostgreSQL come database di back-end. Per installare PostgreSQL esegui questo comando.
sudo apt install postgresql -y
Dopo aver installato con successo PostgreSQL, dobbiamo creare un utente PostgreSQL e lo chiameremo odoo15.
sudo su - postgres -c "createuser -s odoo15"
4 Creazione di un utente di sistema
Ora dobbiamo creare un utente di sistema per la nostra istanza Odoo15. Per farlo, esegui questo comando.
sudo useradd -m -d /opt/odoo15 -U -r -s /bin/bash odoo15
5 Installazione di wkhtmltopdf
Wkhtmltopdf è uno strumento da riga di comando open source che esegue il rendering di HTML in formato PDF utilizzando il motore di rendering Qt WebKit. Questo strumento è necessario per la stampa di report PDF. Per installare Wkhtmltopdf è necessario installare il pacchetto wkhtmltox. Poiché il pacchetto wkhtmltopdf incluso nei repository di Ubuntu 22.04 non supporta intestazioni e piè di pagina, è necessario scaricare il pacchetto da Github e installarlo.
Prima di scaricare il pacchetto wkhtmltox da Github, dobbiamo installare libssl1.1 perché wkhtmltox dipende da questo pacchetto.
Poiché Ubuntu 22.04 ha aggiornato libssl alla versione 3, è necessario aggiungere il sorgente di Ubuntu 21.10 per forzare l'installazione di libssl1.1.
echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt-get update
sudo apt-get install libssl1.1 -y
AGGIORNAMENTO:se l'aggiornamento del repository impish non riesce, puoi scaricare manualmente il pacchetto libssl1.1 e installarlo.
Per installarlo manualmente, segui questi passaggi.
sudo wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
Scarichiamo il pacchetto wkhtmltox da Github.
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb
Rendilo eseguibile.
chmod +x wkhtmltox_0.12.6-1.focal_amd64.deb
Quindi installalo.
sudo apt install ./wkhtmltox_0.12.6-1.focal_amd64.deb
Crea un collegamento simbolico.
ln -s /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
Verifica se l'installazione è andata a buon fine controllando la versione.
wkhtmltopdf --version
Output:
wkhtmltopdf 0.12.6 (with patched qt)
6 Installazione e configurazione di Odoo 15
La prima cosa che dobbiamo fare è passare all'utente odoo15.
su - odoo15
Quindi scarica il repository Odoo15 da Github.
git clone https://www.github.com/odoo/odoo --depth 1 --branch 15.0 /opt/odoo15/odoo
Quindi cambia la directory nella directory odoo15.
cd /opt/odoo15
Quindi crea un ambiente virtuale.
python3 -m venv myodoo15-venv
Attiva l'ambiente virtuale.
source myodoo15-venv/bin/activate
Quindi installeremo tutte le dipendenze di Odoo15.
Per prima cosa installiamo la ruota del modulo Python.
(myodoo15-venv) $ pip3 install wheel
Quindi installa i moduli Python elencati nel file Requirements.txt. Ma prima di procedere con l'installazione delle altre dipendenze, dobbiamo modificare il file Requirements.txt in modo che altri moduli siano compatibili con Python 3.10 che è la versione Python predefinita di Ubuntu 22.04.
Apri il file Requirements.txt usando il tuo editor di testo preferito.
nano /opt/odoo15/odoo/requirements.txt
Output:
====================================================================
Babel==2.9.1 # min version = 2.6.0 (Focal with security backports)
chardet==3.0.4
decorator==4.4.2
docutils==0.16
ebaysdk==2.1.5
freezegun==0.3.11; python_version < '3.8'
freezegun==0.3.15; python_version >= '3.8'
gevent==1.5.0 ; python_version == '3.7'
gevent>=20.9.0 ; python_version >= '3.8'
greenlet==0.4.15 ; python_version == '3.7'
greenlet>=0.4.17 ; python_version > '3.7'
idna==2.8
Jinja2==2.11.3 # min version = 2.10.1 (Focal - with security backports)
libsass==0.18.0
lxml==4.6.5 # min version = 4.5.0 (Focal - with security backports)
MarkupSafe==1.1.0
num2words==0.5.6
ofxparse==0.19
passlib==1.7.3 # min version = 1.7.2 (Focal with security backports)
Pillow==9.0.1 # min version = 7.0.0 (Focal with security backports)
polib==1.1.0
psutil==5.6.7 # min version = 5.5.1 (Focal with security backports)
psycopg2==2.7.7; sys_platform != 'win32' and python_version < '3.8'
psycopg2==2.8.6; sys_platform == 'win32' or python_version >= '3.8'
pydot==1.4.1
pyopenssl==19.0.0
PyPDF2==1.26.0
pypiwin32 ; sys_platform == 'win32'
pyserial==3.4
python-dateutil==2.7.3
python-ldap==3.4.0 ; sys_platform != 'win32' # min version = 3.2.0 (Focal with security backports)
python-stdnum==1.13
pytz==2019.3
pyusb==1.0.2
qrcode==6.1
reportlab==3.5.59 # version < 3.5.54 are not compatible with Pillow 8.1.2 and 3. 5.59 is bullseye
requests==2.25.1 # versions < 2.25 aren't compatible w/ urllib3 1.26. Bullseye = 2.25.1. min version = 2.22.0 (Focal)
urllib3==1.26.5 # indirect / min version = 1.25.8 (Focal with security backports )
vobject==0.9.6.1
Werkzeug==0.16.1
xlrd==1.1.0; python_version < '3.8'
xlrd==1.2.0; python_version >= '3.8'
XlsxWriter==1.1.2
xlwt==1.3.*
zeep==3.4.0
Guarda il pacchetto evidenziato, quelli sono quelli che devono essere aggiornati, in pratica devi solo impostare gevent e greenlet versione per installare l'ultima versione compatibile se la versione di Python è maggiore di uguale a Python 3.7 e Python 3.8 rispettivamente.
Il file Requirements.txt sopra dovrebbe assomigliare al tuo Requirements.txt.
Ora, dopo aver modificato il file Requirements.txt, salviamolo e installiamo le dipendenze Odoo15.
(myodoo15-venv) pip3 install -r odoo/requirements.txt
Dopo aver installato le dipendenze dobbiamo disattivare l'ambiente virtuale.
(myodoo15-venv) deactivate
Creiamo una directory per i nostri componenti aggiuntivi personalizzati.
mkdir /opt/odoo15/custom-addons
Usciamo all'utente Odoo15.
exit
Creiamo il file di configurazione della nostra istanza Odoo15.
sudo nano /etc/odoo15.conf
Inserisci il contenuto qui sotto:
[options]
; This is the password that allows database operations:
admin_passwd = admin_password
db_host = False
db_port = False
db_user = odoo15
db_password = False
xmlrpc_port = 8069
logfile = /var/log/odoo15/odoo.log
addons_path = /opt/odoo15/odoo/addons,/opt/odoo15/custom-addons
Assicurati di cambiare “admin_password ” alla tua password preferita, quindi salva e chiudi il file.
Quindi, creiamo una directory di registro.
mkdir /var/log/odoo15
Imposta la proprietà della directory di log sull'utente odoo15.
chown odoo15:root /var/log/odoo15
7 Creazione del servizio Systemd Odoo15
Per gestire facilmente la nostra istanza Odoo15 dobbiamo creare un file di unità systemd. Creiamo un file di unità systemd.
sudo nano /etc/systemd/system/odoo15.service
Inserisci il seguente contenuto.
[Unit]
Description=Odoo15
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo15
PermissionsStartOnly=true
User=odoo15
Group=odoo15
ExecStart=/opt/odoo15/myodoo15-venv/bin/python3 /opt/odoo15/odoo/odoo-bin -c /etc/odoo15.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Salva e chiudi il file e ricarica il demone systemd per applicare le modifiche.
sudo systemctl daemon-reload
Avvia e abilita il servizio Odoo15.
sudo systemctl enable --now odoo15
Verifica lo stato del servizio Odoo15.
sudo systemctl status odoo15
Ecco fatto, dovresti essere in grado di accedere alla tua istanza odoo15 su http://ipaddress:8069 . Se hai bisogno di proxy inverso puoi consultare la nostra guida su come configurare Odoo con Apache o Nginx come proxy inverso. Se hai bisogno del certificato SSL puoi consultare il nostro articolo su Let's Encrypt.
8 Conclusione
In questo tutorial hai imparato come installare Odoo 15 su Ubuntu 22.04. Se ti piace questo articolo, ti potrebbe piacere anche il nostro articolo su Odoo 15 su Ubuntu 20.04