Installazione Odoo
Installazione standard semplificata
È riservata a coloro che desiderano provare Odoo sul proprio computer oppure per sistemi che andranno in produzione.
Odoo CE (Community Edition) ver. 10
Eseguire i seguenti comandi da terminale:
Sistemi Debian (come utente root) - Guida verificata con Debian 8
# wget -O - https://nightly.odoo.com/odoo.key | apt-key add - # echo "deb http://nightly.odoo.com/10.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list # apt-get update # apt-get install odoo
Sistemi Ubuntu - Guida verificata con Ubuntu 16.04
$ wget -O - https://nightly.odoo.com/odoo.key | sudo apt-key add - $ sudo sh -c "echo 'deb http://nightly.odoo.com/10.0/nightly/deb/ ./' >> /etc/apt/sources.list.d/odoo.list" $ sudo apt-get update $ sudo apt-get install odoo
Aprire quindi un browser e digitare l'indirizzo
per accedere alla pagina principale di Odoo.
Odoo CE (Community Edition) ver. 11
È riservata a coloro che desiderano provare Odoo sul proprio computer oppure per sistemi che andranno in produzione.
Per installare Odoo 11.0 Community, eseguire i seguenti comandi da terminale:
Sistemi Debian (come utente root) - Guida verificata con Debian 9
# wget -O - https://nightly.odoo.com/odoo.key | apt-key add - # echo "deb http://nightly.odoo.com/11.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list # apt-get update # apt-get install odoo
Sistemi Ubuntu - Guida verificata con Ubuntu 16.04
La versione 11 necessita di alcune librerie python nuove o con versione più recente rispetto a quelle presenti negli archivi standard di Ubuntu 16.04.
Una soluzione rapida (ma non molto ortodossa) per risolvere il problema è installare i pacchetti contenenti tali moduli, scaricandoli dagli archivi della versione 17.04 di Ubuntu.
$ wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python-qrcode/python3-qrcode_5.3-1_all.deb $ wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python-vobject/python3-vobject_0.9.5-2_all.deb $ wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python-dateutil/python3-dateutil_2.6.0-1_all.deb $ sudo dpkg -i python3-qrcode_5.3-1_all.deb python3-vobject_0.9.5-2_all.deb python3-dateutil_2.6.0-1_all.deb python3-dateutil_2.6.0-1_all.deb
Procedere con l'installazione di Odoo eseguendo i seguenti comandi:
$ wget -O - https://nightly.odoo.com/odoo.key | sudo apt-key add - $ sudo sh -c "echo 'deb http://nightly.odoo.com/11.0/nightly/deb/ ./' >> /etc/apt/sources.list.d/odoo.list" $ sudo apt-get update $ sudo apt-get install odoo
Aprire quindi un browser e digitare l'indirizzo
per accedere alla pagina principale di Odoo.
Report in PDF
Per la creazione dei report in formato PDF, Odoo utilizza l'utility chiamata wkhtmlktopdf.
La versione attualmente consigliata è la 0.12.1.
N.B: Consultare il repository Odoo per un elenco aggiornato delle versioni compatibili.
Per scaricare e installare l'utility eseguire i seguenti comandi da terminale:
Debian 8 - Jessie
# apt install xfonts-75dpi xfonts-base # wget https://nightly.odoo.com/extra/wkhtmltox-0.12.1.2_linux-jessie-amd64.deb # sudo dpkg -i wkhtmltox-0.12.1.2_linux-jessie-amd64.deb # cp -p /usr/local/bin/wkhtmlto* /usr/bin/
Ubuntu 16.04 - Xenial Xerus
$ sudo apt install xfonts-75dpi xfonts-base $ wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb $ sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb $ sudo cp -p /usr/local/bin/wkhtmlto* /usr/bin/
File di configurazione
Al termine dell'installazione il file di configurazione di Odoo si trova in /etc/odoo/odoo.conf
Dopo aver modificato il file di configurazione, riavviare il servizio Odoo digitando da terminale il seguente comando, preceduto dal comando sudo
se viene eseguito su sistemi Ubuntu:
# systemctl restart odoo
In alternativa può essere usato il seguente comando:
# service odoo restart
Le directory predefinite per contenere i moduli di terze parti invece sono:
/var/lib/odoo/.local/share/Odoo/addons/
~/.local/share/Odoo/addons/10.0
Infine la directory che conterrà gli allegati (divisi per database) e le sessioni sono rispettivamente:
/var/lib/odoo/.local/share/Odoo/filestore
/var/lib/odoo/.local/share/Odoo/sessions
Risoluzione problemi
Problema
Dopo aver provato a creare il primo database dalla pagina principale di Odoo compare il seguente messaggio di errore:
Database creation error: new encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII) HINT: Use the same encoding as in the template database, or use template0 as template.
Risoluzione
aprire un terminale ed eseguire i seguenti comandi:
# su - postgres # psql postgres=# update pg_database set datallowconn = TRUE where datname = 'template0'; postgres=# \c template0 template0=# update pg_database set datistemplate = FALSE where datname = 'template1'; template0=# drop database template1; DROP DATABASE template0=# create database template1 with template = template0 encoding = 'UTF8'; CREATE DATABASE template0=# update pg_database set datistemplate = TRUE where datname = 'template1'; UPDATE 1 template0=# \c template1 You are now connected to database "template1". template1=# update pg_database set datallowconn = FALSE where datname = 'template0'; UPDATE 1
Problema
Dopo aver installato Odoo, quando viene aperta la pagina principale all'indirizzo
compare il messaggio Internal Server Error.
Risoluzione
Provare a disinstallare Postgres eliminando anche tutti i file di configurazione e installare nuovamente Odoo.
ATTENZIONE: i seguenti comandi procedono con l'eliminazione completa di Postgres e di tutti i programmi che ne fanno uso comprese le configurazioni. Se nel vostro computer sono presenti altri software che utilizzano Postgres, non procedere oltre.
# apt-get autoremove --purge postgresql* # apt-get install odoo
N.B.: con Ubuntu anteporre sudo
ai precedenti comandi.
Installazione avanzata per sviluppatori
È consigliata a coloro che desiderano provare a sviluppare o modificare moduli Odoo sulla propria macchina.
L'installazione prevede l'impiego del programma VirtualEnv di Python per installare/gestire versioni diverse di Python (richieste da specifiche versioni di Odoo) mantenendo inalterati i pacchetti Python di sistema.
Procedura testata su Ubuntu 16.04 e Debian 9.3.0.
(Consigliamo di leggere una volta tutte le istruzioni e poi procedere.)
Requisiti
- disponibilità programma Git: per installarlo
sudo apt install git
- disponibilità programma VirtualEnv: per installarlo
sudo apt install virtualenv
- disponibilità programma PostgreSQL: per installarlo
sudo apt install postgresql postgresql-contrib
- disponibilità di alcuni tool e librerie: per installarli
sudo apt install build-essential zlib1g-dev libxslt1-dev libxml2-dev libldap2-dev libsasl2-dev node-less
- opzionale: bash modificata per visualizzare nel prompt la versione VirtualEnv attivata
- opzionale: disponibilità programma PyCharm (vedi Installazione dell'ultima versione di Pycharm CE)
La struttura delle directory qui proposta per gestire le varie versioni è la seguente:
~ |___ |__ odoo-dev10 | |__ OCB | |__ venv-2.7 | |__ oddons_custom | |__ oddons_ita | |__ oddons_oca | |__ odoo-dev11 |__ OCB |__ venv-3.5 |__ oddons_custom |__ oddons_ita |__ oddons_oca
Può essere modificata allineando opportunamente le istruzioni di installazione.
Odoo 10 con Python 2.7
Preparazione
Predisporre una directory progetto (es. ~/odoo-dev10) e posizionarsi all’interno
mkdir odoo-dev10 cd odoo-dev10
Installare Python2.7
sudo apt-get install python2.7 python2.7-dev
Scaricare i file Odoo della versione 10 e salvarli nella directory OCB
git clone https://github.com/OCA/OCB.git OCB --depth=1 --branch=10.0 --single-branch
Creazione ambiente virtuale
Generare l’ambiente virtuale con i file della versione Python per Odoo 10 creando una directory apposita (es. venv-2.7)
virtualenv -p /usr/bin/python2.7 venv-2.7
Attivare l’ambiente virtuale VirtualEnv
source venv-2.7/bin/activate
Installare i pacchetti Python secondo le specifiche di Odoo
pip install -r OCB/requirements.txt
Per disattivare l’ambiente VirtualEnv
deactivate
Odoo 11 con Python 3.5
Preparazione
Predisporre una directory progetto (es. ~/odoo-dev11) e posizionarsi all’interno
mkdir odoo-dev11 cd odoo-dev11
Installare Python3.5
sudo apt install python3.5 python3.5-dev
Scaricare i file Odoo della versione 11 e salvarli nella directory OCB
git clone https://github.com/OCA/OCB.git OCB --depth=1 --branch=11.0 --single-branch
Creazione ambiente virtuale
Generare l’ambiente virtuale con i file della versione Python per Odoo 11 creando una directory apposita (es. venv-3.5)
virtualenv -p /usr/bin/python3.5 venv-3.5
Attivare l’ambiente virtuale VirtualEnv
source venv-3.5/bin/activate
Installare i pacchetti Python secondo le specifiche di Odoo
pip3 install -r OCB/requirements.txt
Installare eventuali pacchetti Python aggiuntivi
pip3 install paramiko pip3 install watchdog pip3 install odfpy pip3 install codicefiscale pip3 install psycogreen pip3 install pymssql pip3 install pyodbc
Installare eventuali pacchetti apt per la stampa cups
sudo apt install cups sudo apt install python-cups sudo apt install libcups2-dev sudo apt install python3-dev
Installare eventuali pacchetti Python per la stampa cups
python3 -m pip install --upgrade pip python3 -m pip install pygments python3 -m pip install pycups python3 -m pip install zpl2 (opzionale)
Per disattivare l’ambiente VirtualEnv
deactivate
Configurazione di Pycharm con VirtualEnv
Avviare PyCharm e aprire un Progetto (non Nuovo progetto) puntando alla directory OCB nella directory_progetto.
Aggiungere l’interprete Python selezionando il menu
File → Settings → Project → Project Interpreter → Add : Existing Enviroment
Selezionare il file python (link al file della versione installata) della directory_virtualenv/bin e impostare il programma da lanciare e la configurazione da utilizzare in
Run → Debug-Configuration
Con +
aggiungo una nuova configurazione di tipo Python impostando i parametri
script => punta al file odoo-bin del progetto (es. ~/odoo-dev/odoo10/OCA/OCB/odoo-bin) script parameters => inserisco i parametri configurazione avvio Odoo
Tra i parametri di avvio ricordiamo --dev=all
che ricarica automaticamente i file Python e le definizioni delle viste XML modificati senza richiedere il riavvio del server Odoo e l'aggiornamento del modulo.
Aggiungere l'utente di sistema a Postgres
Prima di avviare Odoo da PyCharm è necessario che l’utente di sistema (nome_utente) con cui si opera sia un utente Postgres.
Per aggiungere l’utente di sistema a Postgres:
sudo su su postgres createuser -s nome_utente
Avviare psql e modificare i ruoli di nome_utente
psql psql=# alter role nome_utente with createdb; psql=# alter role nome_utente with nocreaterole; psql=# alter role nome_utente with nosuperuser;
Nota con installazione di produzione
Se è presente nella macchina una installazione di Odoo per produzione (vedi Installazione standard semplificata), prima di avviare PyCharm è necessario disabilitare il servizio Odoo con
systemctl disable odoo.service
oppure
service odoo stop
.
Risoluzione problemi
Problema
Internal Server Error
Se si passa da una versione di Odoo ad un'altra, facendo partire Odoo vengono visualizzati dei messaggi di errore nella console PyCharm relativi al database di un'altra versione e se si tenta di accedere a http://localhost:8069 si riceve un errore "Internal Server Error".
Risoluzione
Fermare l'esecuzione di Odoo. Pulire la cache del browser o avviare una nuova sessione anonima. Riavviare Odoo.
Accedere a http://localhost:8069/web/database/selector.
Si aprirà l'interfaccia di gestione dei database: creare un database per la nuova versione di Odoo.
Pulire la cache del browser o avviare una nuova sessione anonima e riavviare Odoo.
Problema
path /usr/bin/python errato
Dopo aver installato una versione di Python (es. 3.5) al momento di eseguire virtualenv -p /usr/bin/python3.5 venv-3.5
compare il messaggio di errore che il percorso /usr/bin/python3.5 non è valido.
Risoluzione
Il problema nasce dal fatto che con il comando /usr/bin/python3.5
viene installata una versione più recente di quella richiesta (es. 3.6).
Verificare in ~/usr/bin la versione di Python installata e adeguare il path.
Problema
virtualenv in errore in presenza di proxy
Al momento di eseguire virtualenv -p /usr/bin/python3.5 venv-3.5
compare un lungo messaggio di errore che termina con python3.5 - setuptools pkg_resources pip wheel failed with error code 2
Risoluzione
Esportare per i protocolli http e https l'indirizzo del proxy:porta (es.192.168.0.1:8080)
export http_proxy='http://192.168.0.1:8080'
export https_proxy='http:/192.168.0.1:8080'
Installazione IDE di sviluppo
Per iniziare a sviluppare con Odoo è altamente consigliata l'installazione di una IDE di sviluppo.
Installazione Visual Studio Code
Seguire la seguente guida per l'installazione di VSCode
Installazione Pycharm Community Edition
Seguire la seguente guida per l'installazione di Pycharm CE