Difference between revisions of "Installazione Odoo"

From PNLUG
Jump to navigation Jump to search
Line 372: Line 372:
   
 
Tra i parametri di avvio ricordiamo:
 
Tra i parametri di avvio ricordiamo:
  +
  +
<code>--addons-path</code> per indicare dove cercare i moduli da utilizzare; deve contenere sempre la cartella addons della versione di Odoo utilizzata (es. <code>~/odoo-dev/odoo12/OCA/OCB/addons</code>) e separate da virgola le latre cartelle come ad esempio quelle di moduli aggiuntivi; es. <code>--addons-path=~/odoo-dev/odoo12/OCA/OCB/addons,~/odoo-dev/odoo12/OCA/addons-custom</code>.
   
 
<code>--dev=all</code> 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.
 
<code>--dev=all</code> 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.
  +
  +
oppure
  +
  +
<code>--dev=xml</code> che ricarica automaticamente i file XML modificati senza richiedere il riavvio del server Odoo e l'aggiornamento del modulo.
   
 
=== Aggiungere l'utente di sistema a Postgres ===
 
=== Aggiungere l'utente di sistema a Postgres ===

Revision as of 14:35, 25 May 2020


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. 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 18.04

$ sudo apt install gnupg
$ 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

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

http://localhost:8069

per accedere alla pagina principale di Odoo.


Odoo CE (Community Edition) ver. 12

È riservata a coloro che desiderano provare Odoo sul proprio computer oppure per sistemi che andranno in produzione.

Per installare Odoo 12.0 Community, eseguire i seguenti comandi da terminale:

Sistemi Ubuntu - Guida verificata con Ubuntu 18.04 e con Debian 9

$ sudo apt install gnupg
$ wget -O - https://nightly.odoo.com/odoo.key | sudo apt-key add -
$ sudo sh -c "echo 'deb http://nightly.odoo.com/12.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

http://localhost:8069

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 18.04 - Bionic Beaver

$ sudo apt install xfonts-75dpi xfonts-base
$ wget https://builds.wkhtmltopdf.org/0.12.1.3/wkhtmltox_0.12.1.3-1~bionic_amd64.deb
$ sudo dpkg -i wkhtmltox_0.12.1.3-1~bionic_amd64.deb
$ sudo 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

http://localhost:8069

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 o per installazioni in produzione più avanzate.
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 python-pip python-dev build-essential zlib1g-dev libxslt1-dev libxml2-dev libldap2-dev libsasl2-dev node-less


La struttura delle directory qui proposta per gestire le varie versioni è la seguente:

 ~
 |___
     |__ odoo-dev11
     |            |__ OCB
     |            |__ venv-3.6
     |            |__ oddons_custom
     |            |__ oddons_ita
     |            |__ oddons_oca
     |
     |__ odoo-dev12
                  |__ OCB
                  |__ venv-3.6
                  |__ oddons_custom
                  |__ oddons_ita
                  |__ oddons_oca

Può essere modificata allineando opportunamente le istruzioni di installazione.

Preparazione

Odoo 11

Predisporre una directory progetto (es. ~/odoo-dev11) e posizionarsi all’interno

mkdir odoo-dev11
cd odoo-dev11


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


Odoo 12

Predisporre una directory progetto (es. ~/odoo-dev12) e posizionarsi all’interno

mkdir odoo-dev12
cd odoo-dev12


Scaricare i file Odoo della versione 12 e salvarli nella directory OCB

git clone  https://github.com/OCA/OCB.git OCB --depth=1 --branch=12.0 --single-branch


Creazione ambiente virtuale

Generare l’ambiente virtuale con i file della versione Python desiderata creando una directory apposita (es. venv-3.6)

virtualenv -p /usr/bin/python3.6 venv-3.6

Attivare l’ambiente virtuale VirtualEnv

source venv-3.6/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 (richiede la libreria unixodbc-dev)

Per disattivare l’ambiente VirtualEnv

deactivate

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)

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 → Virtualenv Eniroment → Existing Enviroment

Selezionare il file python (link al file della versione installata) della directory_virtualenv/bin. Dare OK e chiudere il menu.

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 path => punta al file odoo-bin del progetto (es. ~/odoo-dev/odoo12/OCA/OCB/odoo-bin)
Parameters => inserisco i parametri configurazione avvio Odoo

Tra i parametri di avvio ricordiamo:

--addons-path per indicare dove cercare i moduli da utilizzare; deve contenere sempre la cartella addons della versione di Odoo utilizzata (es. ~/odoo-dev/odoo12/OCA/OCB/addons) e separate da virgola le latre cartelle come ad esempio quelle di moduli aggiuntivi; es. --addons-path=~/odoo-dev/odoo12/OCA/OCB/addons,~/odoo-dev/odoo12/OCA/addons-custom.

--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.

oppure

--dev=xml che ricarica automaticamente i file 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;

Uscire dal programma psql con quit

psql=# quit;

Uscire dall'utente postgres con exit

exit

Uscire dall'utente root con exit

exit

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

.

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

Risoluzione problemi

Vedi l'apposita sezione: Troubleshooting