Difference between revisions of "Installazione Odoo"

From PNLUG
Jump to: navigation, search
Line 215: Line 215:
 
<b>N.B.</b>: con Ubuntu anteporre <code>sudo</code> ai precedenti comandi.
 
<b>N.B.</b>: con Ubuntu anteporre <code>sudo</code> ai precedenti comandi.
   
== Installazione dell'ultima versione di Pycharm CE (Community Edition) ==
+
== <div id="install_pycharm">Installazione dell'ultima versione di Pycharm CE (Community Edition)</div> ==
   
 
=== Installazione standard semplificata ===
 
=== Installazione standard semplificata ===
Line 247: Line 247:
 
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.
 
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===
 
===Requisiti===
* disponibilità programma '''Git'''
+
* disponibilità programma '''Git''': per installarlo <code>sudo apt install git</code>
  +
* disponibilità programma '''VirtualEnv''': per installarlo <code>sudo apt install virtualenv</code>
 
* opzionale: bash modificata per visualizzare nel prompt la versione virtualenv attivata
 
* opzionale: bash modificata per visualizzare nel prompt la versione virtualenv attivata
* opzionale: disponibilità programma '''PyCharm'''
+
* opzionale: disponibilità programma '''PyCharm''' ([[#install_pycharm|vedi punto 2]])
===Definizioni===
+
===Odoo 10 con Python 2.7===
   
  +
Creare una ''directory_progetto'' (es. ~/odoo-dev/odoo10/OCA) e posizionarsi all’interno
* '''<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>
 
<pre>
  +
mkdir directory_progetto
sudo apt install virtualenv
 
  +
cd directory_progetto
 
</pre>
 
</pre>
  +
Scaricare i file Odoo della versione 10 e salvarli nella directory OCB
  +
<pre>
  +
git clone https://github.com/OCA/OCB.git OCB --depth=1 --branch=10.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-2.7)
  +
<pre>
  +
virtualenv -p /usr/bin/python2.7 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 python2.7-dev
  +
</pre>
  +
Installare i pacchetti Python secondo le specifiche di Odoo
  +
<pre>
  +
pip install -r OCB/requirements.txt
  +
</pre>
  +
  +
===Odoo 11 con Python 3.5===
  +
 
Creare una ''directory_progetto'' (es. ~/odoo-dev/odoo11/OCA) e posizionarsi all’interno
 
Creare una ''directory_progetto'' (es. ~/odoo-dev/odoo11/OCA) e posizionarsi all’interno
 
<pre>
 
<pre>
Line 265: Line 287:
 
cd directory_progetto
 
cd directory_progetto
 
</pre>
 
</pre>
Scaricare i file Odoo della versione '''<span style="color:red;">KK</span>''' e salvarli nella directory OCB
+
Scaricare i file Odoo della versione 11 e salvarli nella directory OCB
 
<pre>
 
<pre>
git clone https://github.com/OCA/OCB.git OCB --depth=1 --branch=KK.0 --single-branch
+
git clone https://github.com/OCA/OCB.git OCB --depth=1 --branch=11.0 --single-branch
 
</pre>
 
</pre>
 
Generare l’ambiente virtuale con i file della versione Python scelta (dipendente dalla versione Odoo) creando una ''directory_virtualenv'' (es. venv-3.5)
 
Generare l’ambiente virtuale con i file della versione Python scelta (dipendente dalla versione Odoo) creando una ''directory_virtualenv'' (es. venv-3.5)
 
<pre>
 
<pre>
virtualenv -p /usr/bin/pythonV.W directory_virtualenv
+
virtualenv -p /usr/bin/python3.5 directory_virtualenv
 
</pre>
 
</pre>
 
Attivare l’ambiente virtuale virtualenv
 
Attivare l’ambiente virtuale virtualenv
Line 280: Line 302:
 
&Egrave; utile installare o verificare che siano installate alcuni librerie e tool
 
&Egrave; utile installare o verificare che siano installate alcuni librerie e tool
 
<pre>
 
<pre>
sudo apt install build-essential zlib1g-dev libxslt1-dev libxml2-dev libldap2-dev libsasl2-dev pythonV.W-dev
+
sudo apt install build-essential zlib1g-dev libxslt1-dev libxml2-dev libldap2-dev libsasl2-dev python3.5-dev
 
</pre>
 
</pre>
 
Installare i pacchetti Python secondo le specifiche di Odoo
 
Installare i pacchetti Python secondo le specifiche di Odoo
Line 287: Line 309:
 
</pre>
 
</pre>
   
====Configurazione di Pycharm con VirtualEnv====
+
===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>
 
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>
 
Aggiungere l’interprete Python selezionando il menu<br>
 
<code>File&rarr;Settings&rarr;Project&rarr;Project Interpreter&rarr;Add : Existing Enviroment</code><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>
+
selezionando il file <i>python</i> (link al file della versione installata) della ''directory_virtualenv/bin''<br>
 
e impostare il programma da lanciare e la configurazione da utilizzare in<br>
 
e impostare il programma da lanciare e la configurazione da utilizzare in<br>
 
<code>Run&rarr;Debug-Configuration</code><br>
 
<code>Run&rarr;Debug-Configuration</code><br>
Line 299: Line 321:
 
script parameters => inserisco i parametri configurazione avvio Odoo
 
script parameters => inserisco i parametri configurazione avvio Odoo
 
</pre>
 
</pre>
====Aggiungere l'utente di sistema a Postgres====
+
===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>
 
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:
 
Per aggiungere l’utente di sistema a Postgres:
 
<pre>
 
<pre>
 
sudo su
 
sudo su
  +
su postgres
??? manca istruzione ???
 
 
createuser -s nome_utente
 
createuser -s nome_utente
 
</pre>
 
</pre>
Line 315: Line 337:
 
</pre>
 
</pre>
   
====Nota con installazione di produzione====
+
===Nota con installazione di produzione===
 
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>.
 
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 11:58, 12 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: per installarlo sudo apt install git
  • disponibilità programma VirtualEnv: per installarlo sudo apt install virtualenv
  • opzionale: bash modificata per visualizzare nel prompt la versione virtualenv attivata
  • opzionale: disponibilità programma PyCharm (vedi punto 2)

Odoo 10 con Python 2.7

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

mkdir directory_progetto
cd directory_progetto

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

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

virtualenv -p /usr/bin/python2.7 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 python2.7-dev

Installare i pacchetti Python secondo le specifiche di Odoo

pip install -r OCB/requirements.txt

Odoo 11 con Python 3.5

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 11 e salvarli nella directory OCB

git clone  https://github.com/OCA/OCB.git OCB --depth=1 --branch=11.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/python3.5 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 python3.5-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 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

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 secondo le indicazioni al punto 1.1 o 1.2, prima di avviare PyCharm è necessario fermare il servizio Odoo con odoo-service stop.