Difference between revisions of "Installazione Odoo"

From PNLUG
Jump to: navigation, search
(Ubuntu 16.04 - Xenial Xerus)
Line 241: Line 241:
   
 
Confermare per installare e procedere fino al completamento dell'operazione.
 
Confermare per installare e procedere fino al completamento dell'operazione.
  +
  +
== Installazione avanzata per sviluppatori (! v.BETA !)==
  +
  +
È consigliata a coloro che desiderano provare a sviluppare o modificare moduli Odoo sulla propria macchina.<br>
  +
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.
  +
===Requisiti===
  +
* disponibilità programma '''Git'''
  +
* opzionale: bash modificata per visualizzare nel prompt la versione virtualenv attivata
  +
* opzionale: disponibilità programma '''PyCharm'''
  +
===Definizioni===
  +
  +
* '''<span style="color:red;">V.W</span>''': versione di Python
  +
* pip'''<span style="color:red;">X</span>''': pip per Python 2.7 con Odoo10 , pip3 per Python3 con Odoo11
  +
* '''<span style="color:red;">KK</span>''': versione di Odoo: 10, 11
  +
===Porcedura===
  +
Installare il programma '''virtualenv''' (indipendente dalla versione Python)
  +
<pre>
  +
sudo apt install virtualenv
  +
</pre>
  +
Creare una ''directory_progetto'' (es. ~/odoo-dev/odoo11/OCA) e posizionarsi all’interno
  +
<pre>
  +
mkdir directory_progetto
  +
cd directory_progetto
  +
</pre>
  +
Scaricare i file Odoo della versione '''<span style="color:red;">KK</span>''' e salvarli nella directory OCB
  +
<pre>
  +
git clone https://github.com/OCA/OCB.git OCB --depth=1 --branch=KK.0 --single-branch
  +
</pre>
  +
Generare l’ambiente virtuale con i file della versione Python scelta (dipendente dalla versione Odoo) creando una ''directory_virtualenv'' (es. venv-3.5)
  +
<pre>
  +
virtualenv -p /usr/bin/pythonV.W directory_virtualenv
  +
</pre>
  +
Attivare l’ambiente virtuale virtualenv
  +
<pre>
  +
source directory_virtualenv/bin/activate
  +
</pre>
  +
(Per disattivare l’ambiengte virtualenv utilizzo il comando <code>deactivate</code>)<br>
  +
&Egrave; utile installare o verificare che siano installate alcuni librerie e tool
  +
<pre>
  +
sudo apt install build-essential zlib1g-dev libxslt1-dev libxml2-dev libldap2-dev libsasl2-dev pythonV.W-dev
  +
</pre>
  +
Installare i pacchetti Python secondo le specifiche di Odoo
  +
<pre>
  +
pipX install -r OCB/requirements.txt
  +
</pre>
  +
  +
===Configurazione di Pycharm con VirtualEnv===
  +
Avviare PyCharm e aprire un <code>progetto</code> (non un <code>nuovo progetto</code>) puntando alla directory OCB nella ''directory_progetto''.<br>
  +
Aggiungere l’interprete Python selezionando il menu<br>
  +
<code>File&rarr;Settings&rarr;Project&rarr;Project Interpreter&rarr;Add : Existing Enviroment</code><br>
  +
selezionando il file Python'''<span style="color:red;">V.W</span>''' della ''directory_virtualenv/bin''<br>
  +
e impostare il programma da lanciare e la configurazione da utilizzare in<br>
  +
<code>Run&rarr;Debug-Configuration</code><br>
  +
Con <code>+</code> aggiungo una nuova configurazione di tipo Python impostando i parametri
  +
<pre>
  +
script => punta al file odoo-bin del progetto (es. ~/odoo-dev/odoo10/OCA/OCB/odoo-bin)
  +
script parameters => inserisco i parametri configurazione avvio Odoo
  +
</pre>
  +
===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.<br>
  +
Per aggiungere l’utente di sistema a Postgres:
  +
<pre>
  +
sudo su
  +
??? manca istruzione ???
  +
createuser -s nome_utente
  +
</pre>
  +
Avviare '''psql''' e modificare i ruoli di ''nome_utente''
  +
<pre>
  +
psql
  +
psql=# alter role nome_utente with createdb;
  +
psql=# alter role nome_utente with nocreaterole;
  +
psql=# alter role nome_utente with nosuperuser;
  +
</pre>
  +
  +
===Nota===
  +
Se è presente nella macchina una installazione di Odoo per produzione secondo le indicazioni al punto 1.1 o 1.2, prima di avviare PyCharm è necessario fermare il servizio Odoo con <code>odoo-service stop</code>.

Revision as of 00:32, 9 January 2018


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

http://localhost:8069

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-pyldap/python3-pyldap_2.4.25.1-2ubuntu1_amd64.deb
$ 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.3-3_all.deb
$ wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python-dateutil/python3-dateutil_2.5.3-2_all.deb
$ sudo dpkg -i python3-pyldap_2.4.25.1-2ubuntu1_amd64.deb python3-qrcode_5.3-1_all.deb python3-vobject_0.9.3-3_all.deb python3-dateutil_2.5.3-2_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.


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-<arch>.deb
# sudo dpkg -i wkhtmltox-0.12.1.2_linux-jessie-<arch>.deb
# cp -p /usr/local/bin/wkhtmlto* /usr/bin/

<arch> = amd64 per sistemi a 64 bit

<arch> = i386 per sistemi a 32 bit

Ubuntu 16.04 - Xenial Xerus

$ sudo apt install xfonts-75dpi xfonts-base
$ wget https://downloads.wkhtmltopdf.org/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-<arch>.deb
$ sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-<arch>.deb
$ sudo cp -p /usr/local/bin/wkhtmlto* /usr/bin/

<arch> = amd64 per sistemi a 64 bit

<arch> = i386 per sistemi a 32 bit

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 dell'ultima versione di Pycharm CE (Community Edition)

Installazione standard semplificata

È riservata a coloro che desiderano installare l'IDE Pycharm sul proprio computer in modo semplice e veloce.


Sistemi Ubuntu (Guida verificata con Ubuntu 16.04)

Per installare l'IDE Pycharm Community, eseguire i seguenti comandi da terminale:

$ sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make
$ sudo apt-get update
$ sudo apt-get install ubuntu-make
$ umake ide pycharm

A questo punto l'installer propone il seguente percorso come predefinito per l'installazione:

~/.local/share/umake/ide/pycharm

Confermare per installare e procedere fino al completamento dell'operazione.

Installazione avanzata per sviluppatori (! v.BETA !)

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

Requisiti

  • disponibilità programma Git
  • opzionale: bash modificata per visualizzare nel prompt la versione virtualenv attivata
  • opzionale: disponibilità programma PyCharm

Definizioni

  • V.W: versione di Python
  • pipX: pip per Python 2.7 con Odoo10 , pip3 per Python3 con Odoo11
  • KK: versione di Odoo: 10, 11

Porcedura

Installare il programma virtualenv (indipendente dalla versione Python)

sudo apt install virtualenv

Creare una directory_progetto (es. ~/odoo-dev/odoo11/OCA) e posizionarsi all’interno

mkdir directory_progetto
cd directory_progetto

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

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

Generare l’ambiente virtuale con i file della versione Python scelta (dipendente dalla versione Odoo) creando una directory_virtualenv (es. venv-3.5)

virtualenv -p /usr/bin/pythonV.W directory_virtualenv

Attivare l’ambiente virtuale virtualenv

source directory_virtualenv/bin/activate

(Per disattivare l’ambiengte virtualenv utilizzo il comando deactivate)
È utile installare o verificare che siano installate alcuni librerie e tool

sudo apt install build-essential zlib1g-dev libxslt1-dev libxml2-dev libldap2-dev libsasl2-dev pythonV.W-dev

Installare i pacchetti Python secondo le specifiche di Odoo

pipX install -r OCB/requirements.txt

Configurazione di Pycharm con VirtualEnv

Avviare PyCharm e aprire un progetto (non un nuovo progetto) puntando alla directory OCB nella directory_progetto.
Aggiungere l’interprete Python selezionando il menu
File→Settings→Project→Project Interpreter→Add : Existing Enviroment
selezionando il file PythonV.W 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

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
??? manca istruzione ???
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

Se è presente nella macchina una installazione di Odoo per produzione secondo le indicazioni al punto 1.1 o 1.2, prima di avviare PyCharm è necessario fermare il servizio Odoo con odoo-service stop.