Introduzione
Odoo è una suite basata sul Web di applicazioni di gestione aziendale open source. La piattaforma include varie soluzioni aziendali, come CRM, gestione del magazzino, contabilità, fatturazione, creazione di siti Web, ecc.
L'edizione Odoo Community è disponibile gratuitamente per Ubuntu, ma puoi passare all'edizione Enterprise secondo necessità.
Questo tutorial fornisce i passaggi per l'installazione di Odoo 15 su Ubuntu 20.04 in un ambiente virtuale Python.
Prerequisiti
- Accesso alla riga di comando/terminale con autorizzazioni sudo.
- Accesso a un browser.
- Git installato.
- Pip per Python 3 installato.
- NodeJS installato.
Installa Odoo su Ubuntu
Dopo aver soddisfatto tutti i prerequisiti, segui i passaggi seguenti per installare Odoo 15 su Ubuntu in un ambiente virtuale Python.
L'installazione di Odoo in un ambiente virtuale crea un sistema isolato e consente di testare versioni diverse sulla stessa macchina.
Fase 1:aggiorna il repository
Apri il terminale e aggiorna il repository apt:
sudo apt update
Attendi il completamento dell'aggiornamento prima di procedere al passaggio successivo.
Passaggio 2:installa le dipendenze Odoo
Installa le dipendenze di Odoo con il seguente comando:
sudo apt install -y build-essential wget python3-dev python3-venv python3-wheel libfreetype6-dev libxml2-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less libjpeg-dev zlib1g-dev libpq-dev libxslt1-dev libldap2-dev libtiff5-dev libjpeg8-dev libopenjp2-7-dev liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev
Assicurati che non ci siano errori di battitura per evitare pacchetti mancanti.
L'installazione recupera tutte le dipendenze aggiuntive necessarie per l'installazione di Odoo.
Fase 3:crea un utente Odoo
L'esecuzione di Odoo come utente root rappresenta un rischio per la sicurezza. Crea una nuova directory utente, gruppo e home di sistema denominata Odoo :
sudo useradd -m -d /opt/odoo -U -r -s /bin/bash odoo
Il nome utente può essere diverso se corrisponde all'utente PostgreSQL e alle informazioni sul file di configurazione.
Fase 4:installa e configura PostgreSQL
Odoo usa PostgreSQL come database. Installa PostgreSQL dai repository ufficiali di Ubuntu con:
sudo apt install postgresql
Premi Y quando viene richiesto di continuare. Al termine dell'installazione, crea un utente Postgres con lo stesso nome dal passaggio precedente:
sudo su - postgres -c "createuser -s odoo"
Il comando crea un utente chiamato odoo per gestire il database.
Passaggio 5:installa wkhtmltopdf
Il set di strumenti open source wkhtmltopdf consente di eseguire il rendering di pagine HTML in PDF e immagini per la generazione di report in vari formati.
Per scaricare il programma di installazione, esegui:
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
Il comando recupera il pacchetto Debian. Per installare il pacchetto, esegui:
sudo apt install ./wkhtmltox_0.12.5-1.bionic_amd64.deb
Premi Y quando viene chiesto di continuare l'installazione. Attendi il completamento del processo prima di continuare.
Fase 6:installa e configura Odoo
Per installare Odoo, segui i passaggi seguenti:
1. Passa a odoo utente con il comando sudo su:
sudo su - odoo
2. Clona il codice sorgente di Odoo 15 dal repository Git:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 15.0 /opt/odoo15/odoo
4. Passa alla directory di odoo e crea un ambiente virtuale Python per Odoo:
cd /opt/odoo
python3 -m venv odoo-venv
5. Attiva l'ambiente con:
source odoo-venv/bin/activate
Il nome dell'ambiente viene visualizzato nel terminale prima dell'utente.
5. Installa i seguenti requisiti per Odoo:
pip3 install wheel
pip3 install -r odoo/requirements.txt
Attendi il completamento dell'installazione.
6. Dopodiché, Odoo richiede ulteriori impostazioni e configurazioni. Disattiva l'ambiente con:
deactivate
7. Crea una directory separata per i componenti aggiuntivi personalizzati:
mkdir /opt/odoo/odoo-custom-addons
Questa directory definisce dove Odoo cerca i moduli.
8. Torna all'utente sudo con:
exit
9. Crea odoo.conf file utilizzando l'editor di testo nano:
sudo nano /etc/odoo.conf
Incolla i seguenti contenuti in odoo.conf file:
[options]
; Database operations password:
admin_passwd = PASSWORD
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /opt/odoo/odoo/addons,/opt/odoo/odoo-custom-addons
Modifica il admin_password
campo in una password sicura per il database. Il addons_path
contiene i percorsi delle posizioni dei moduli Odoo. Salva e chiudi il file.
10. Crea il odoo.service file con:
sudo nano /etc/systemd/system/odoo.service
Incolla i seguenti contenuti nel file:
[Unit]
Description=Odoo
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/opt/odoo/odoo-venv/bin/python3 /opt/odoo/odoo/odoo-bin -c /etc/odoo.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Il servizio si connette a Odoo tramite l'ambiente virtuale Python e utilizza il file di configurazione del passaggio precedente. Salva le modifiche e chiudi il file.
11. Aggiorna l'elenco dei servizi:
sudo systemctl daemon-reload
Il servizio Odoo è ora disponibile.
Fase 7:avvia e prova Odoo
Per avviare e testare Odoo, procedi come segue:
1. Abilita il servizio Odoo all'avvio del sistema:
sudo systemctl enable --now odoo
2. Verifica lo stato del servizio con:
sudo systemctl status odoo
Lo stato viene visualizzato come active (running)
.
3. Il giornale contiene tutte le informazioni sul servizio in esecuzione:
sudo journalctl -u odoo
Utilizza questo file per verificare la presenza di potenziali errori.
4. Infine, accedi a Odoo dal browser sulla porta localhost 8069:
http://localhost:8069
La pagina mostra la configurazione iniziale di Odoo. Usa il admin_password
da /etc/odoo.conf file come password principale.
Passaggio 8:abilita il multiprocessing (opzionale)
Odoo funziona in modalità multithreading per impostazione predefinita. Modificare il server in modalità multielaborazione prima della distribuzione per utilizzare al meglio le risorse di sistema e garantire la stabilità.
Il numero di CPU aiuta ad approssimare il numero di lavoratori:
- Massimo numero di dipendenti =(CPU * 2) + 1. Per 4 CPU, il sistema dovrebbe avere un massimo di 9 dipendenti.
- Un lavoratore serve in teoria circa sei utenti simultanei. Per 24 utenti simultanei, il sistema richiede almeno quattro lavoratori.
- Un lavoratore cron richiede una CPU.
Pertanto, un sistema con 4 CPU e 24 utenti simultanei necessita di almeno sei worker, più un cron worker aggiuntivo.
Il numero di lavoratori e la distribuzione della RAM determinano la RAM totale di cui Odoo ha bisogno:
- RAM totale =Lavoratori * ((rapporto lavoratore leggero * RAM lavoratore leggero) + (Rapporto di lavoro pesante * RAM lavoratore pesante))
Se ci sono circa l'80% di lavoratori leggeri che utilizzano 100 GB di RAM e il 20% di lavoratori pesanti che utilizzano 1 GB di RAM, il calcolo è:
Total RAM = 7 * ((100*0.8)+(1024*0.2)) = 1993.6
Odoo richiede un totale di 2 GB di RAM. Aggiungi le informazioni a /etc/odoo.conf file:
[options]
limit_memory_hard = 2684354560
limit_memory_soft = 2147483648
limit_request = 8192
limit_time_cpu = 600
limit_time_real = 1200
max_cron_threads = 1
workers = 6
Per applicare le modifiche, riavvia il servizio Odoo:
sudo systemctl restart odoo
Le restanti risorse di sistema sono disponibili per il database PostgreSQL e qualsiasi altro servizio in esecuzione sul sistema.
Fase 9:modifica il numero di porta (opzionale)
Per impostazione predefinita, Odoo è in ascolto sulla porta 8069. La modifica del numero di porta predefinito è una buona pratica di sicurezza.
Aggiungi le seguenti righe a /etc/odoo.conf file per far ascoltare Odoo solo su 127.0.0.1 porta 1111:
xmlrpc_interface = 127.0.0.1
netrpc_interface = 127.0.0.1
xmlrpc_port = 1111
Riavvia il servizio Odoo per applicare le modifiche:
sudo systemctl restart odoo
Le modifiche si applicano immediatamente.