Odoo devinst

Da PNLUG.
Versione del 13 apr 2017 alle 18:42 di Loristissino (Discussione | contributi) (AVVIO DI ODOO)

Ritorna alla pagina principale di ODOO


INSTALLAZIONE DI ODOO

Le note di installazione seguenti potrebbero non essere adeguate per tutte le diverse versioni di Odoo e dei sistemi operativi linux; nel caso in cui si verificassero dei problemi durante l'installazione, sarà necessario risolvere il problema in base agli errori riscontrati e visualizzati dal sistema su cui si sta effettuando l'installazione.
La sequenza dei comandi qui descritti è corretta e non ci dovrebbero essere delle difficoltà a completare correttamente l'installazione.
Per prima cosa, assicuriamoci che il nostro sistema sia aggiornato, aprendo un terminale e digitando:

sudo apt update && sudo apt upgrade


INSTALLAZIONE DI WKHTMLTOX

wkhtmltopdf è un pacchetto richiesto per produrre documenti in formato PDF. Per installarlo ho preferito partire dai file precompilati in formato binario, presenti nel sito http://wkhtmltopdf.org.

Per effettuare l'installazione, aprire un terminale ed eseguire:

wget http://download.gna.org/wkhtmltopdf/0.12/0.12.3/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
tar xvf wkhtmltox-0.12.3_linux-generic-amd64.tar.xz 
sudo mv ./wkhtmltox /opt/wkhtmltox
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/local/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/local/bin/wkhtmltoimage

Naturalmente la versione del file compresso utilizzato può essere diversa da quella qui presa in esame.

INSTALLAZIONE DI POSTGRESQL

Il server postgres, sin da quando viene installato, ha un utente amministratore di nome postgres e NON utilizza alcuna password.
Se si utilizzerà postgres solo in locale questo va bene e non porta alcun problema di sicurezza, ma se è necessario accedere ai vari database anche da remoto è consigliabile inserire una password di protezione.
È necessario anche creare un utente postgres che abbia il nome del proprio utente, in modo tale da permettere ad Odoo di poter accedere al suo database, tramite l'utente che lancia lo script.

Per effettuare le varie operazioni, aprire un terminale ed eseguire:

sudo apt install postgresql
sudo apt install postgresql-server-dev-all
sudo apt install postgresql-client
sudo su - postgres -c "createuser -s $USER"

dove $USER è il nome che corrisponde al nome dell'utente attuale di UBUNTU, con il quale state eseguendo la configurazione.

È molto utile installare nel sistema anche il pacchetto phppgadmin, che utilizza una interfaccia web per facilitare il controllo e la manutenzione dei vari database.
Per fare ciò, abbiamo seguito quanto riportato nel sito https://kishorer.in.
Per effettuare l'installazione, aprire un terminale ed eseguire:

sudo apt install lamp-server^
sudo apt install phppgadmin

ricordandosi che nel file: /etc/phppgadmin/config.inc.php è necessario modificare la linea contenente il comando:

$conf['extra_login_security'] = false;

da true a false, in modo da permettere a phppgadmin di eseguire il login senza password; se invece si prevede di accedere anche dall'esterno della macchina, il comando va lasciato come lo trovate in originale.

Successivamente è necessario editare il file presente in /etc/postgresql/9.5/main/pg_hba.conf per garantire i permessi di accesso,

controllando che sia presente (o inserendo) il seguente testo:

local   all             all                                     trust
host    all             all             127.0.0.1/32            trust


Completate le operazioni, sarà necessario riavviare i servizi, utilizzando i comandi:

sudo service apache2 restart
sudo service postgresql start

Arrivati a questo punto, se non ci sono stati errori, aprendo un browser all'indirizzo http://localhost/phppgadmin si vedrà comparire l'interfaccia grafica che ci permetterà di amministrare i database.

ACCESSO A PHPPGADMIN DA REMOTO

Se si installa postgres su una macchina remota ed è necessario doverci accedere anche con phppgadmin; sarà quindi necessario attivare l'accesso con password.
Per fare questo, prima assegnamo una password all'utente postgres con i seguenti comandi:

sudo su - postgres -c psql
\password
\q

di seguito andiamo ad editare il file /etc/apache2/conf-enabled/phppgadmin.conf per modificare le direttive di accesso, da così:

#deny from all
#allow from 127.0.0.0/255.0.0.0 ::1/128
allow from all

a così, nel qual caso abbiamo deciso quali siano le famiglie di IP che vogliamo autorizzare (localhost + famiglia IP della rete desiderata):

#Require local
order deny,allow
deny from all
allow from 127.0.0.0/255.0.0.0 ::1/128
allow from 192.168.1.0/24

Successivamente, è necessario editare il file /etc/postgresql/9.5/main/postgresql.conf e configurarlo come di seguito:

listen_addresses = '*'

È ora necessario riavviare nuovamente i servizi da terminale, con i comandi:

sudo service apache2 restart
sudo service postgresql start

DOWNLOAD

Tramite il terminale creare una cartella ad hoc che ospiterà i file scaricati, ed entrarci, con i comandi:

mkdir ~/odoo-dev
cd ~/odoo-dev

Scaricare la versione OCB di Odoo e la localizzazione della lingua italiana, con i comandi:

sudo apt install git
git clone --depth=1 --branch=10.0 https://github.com/OCA/OCB OCB
git clone --depth=1 --branch=10.0 https://github.com/OCA/l10n-italy addons_ita

Naturalmente si possono scaricare altre versioni di ODOO e si può scegliere se installare la versione OCB o quella ufficiale, i comandi dovranno essere adattati alla versione scelta.

INSTALLAZIONE DELLE DIPENDENZE

Se si installano sin dall'inizio anche le dipendenze (come trovate descritto nei vari manuali e post in rete su Odoo), durante la prima installazione si possono avere alcuni errori di mancata dipendenza dei file, in quanto le varie dipendenze necessitano dell'installazione preventiva di alcune ulteriori librerie.
La prima volta che abbiamo provato l'installazione completa, abbiamo risolto le varie dipendenze andando per tentativi e visualizzando gli errori dati a terminale; successivamente abbiamo raccolto tutte e informazioni ed abbiamo ovviato al problema con quanto descritto di seguito.
Per effettuare le varie operazioni, aprire un terminale ed eseguire:

sudo apt install python-pip python-dev build-essential
sudo apt install libjpeg-dev
sudo apt install libxml2-dev libxslt1-dev
sudo apt install python-ldap
sudo apt install libldap2-dev
sudo apt install libsasl2-dev
sudo -H pip install --upgrade pip
sudo -H pip install img2pdf

sudo apt install -y npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
node --version
sudo  npm install -g less
less
less --version

a questo punto si possono installare tutte le dipendenze di Odoo, come descritto di seguito.
Per effettuare queste operazioni, aprire un terminale ed eseguire:

cd ~/odoo-dev/OCB
sudo -H pip install -r requirements.txt

Se non sono stati segnalati degli errori durante l'installazione, fin da ora siamo pronti a far partire Odoo per la prima volta.

AVVIO DI ODOO

Si è scelto di attivare da subito i plugin della localizzazione italiana e di preparare un ambiente idoneo e pronto per lo sviluppo.
La versione OCB 10 di Odoo utilizza come script di avvio il file odoo-bin; precedentemente veniva utilizzato il file odoo.py, ma per il nostro utilizzo (sebbene sia la stessa cosa) preferiamo il primo.
Per effettuare le operazioni, aprire un terminale ed eseguire:

cd ~/odoo-dev
mkdir addons
OCB/odoo-bin scaffold mymodule addons

con il comando scaffold prepariamo un modulo vuoto che poi verrà utilizzato per fare i nostri esperimenti.

A questo punto è consigliabile preparare un piccolo script per lanciare Odoo con i parametri che ci servono (sono stati aggiunti i percorsi degli addons); operando in questo modo si possono inserire anche altri parametri a proprio uso.

Creiamo questo file (~/odoo-dev/odoo.sh) con un editor di testo:

nano odoo.sh

e inseriamo il seguente codice:

#!/bin/sh
ODOOHOME=~/odoo-dev
$ODOOHOME/OCB/odoo-bin --addons-path=$ODOOHOME/OCB/addons,$ODOOHOME/addons_ita,$ODOOHOME/addons

In questo modo rendiamo disponibili gli addons standard di Odoo più gli addons della localizzazione in lingua italiana e quelli che svilupperemo noi di seguito.
È necessario rendere lo script eseguibile; per far questo aprire un terminale ed eseguire il comando:

chmod +x odoo.sh

Ora possiamo avviare Odoo con il comando:

sh ~/odoo-dev/odoo.sh

oppure, più semplicemente, con il comando:

cd ~/odoo-dev
./odoo.sh

La prima volta che verrà avviato Odoo vengono chiesti il nome del database da utilizzare e le credenziali di accesso ad esso; durante la prima creazione del dababase è possibile caricare in esso anche dei dati di esempio.

A questo punto verrà creato il database e verranno popolate le sue tabelle; questo potrebbe richiedere un pò di tempo di attesa, per permettere il caricamento dei dati di esempio nelle varie tabelle.
Come ogni applicazione web, anche Odoo mantiene dei suoi cookies per permettere di ricordare al browser quale sia stato l'ultimo database in uso; se si cancellano erroneamente i cookies della pagina we in uso, all'avvio successivo verrà chiesto nuovamente di scegliere il database da utilizzare.

AGGIORNAMENTO DI ODOO

Per mantenere aggiornato ODOO all'ultima versione stabile disponibile in rete, si usa ancora il comando git. Per avviare l'aggiornamento dei file, aprire un terminale e digitare:

cd ~/odoo-dev/OCB
git pull
cd ../addons_ita
git pull
cd ..

Dopo ogni aggiornamento è anche necessario aggiornare le dipendenze python, in quanto potrebbe capitare che nel frattempo potrebbero essere variate.
Per avviare l'aggiornamento dei file, aprire un terminale e digitare:

cd ~/odoo-dev/OCB
sudo pip install -r requirements.txt

INSTALLAZIONE MODULI ODOO

Se si desidera provare altri moduli add-on, questi si possono scaricare facilmente da github e inserirli nella cartella apposita.
Per effettuare le operazioni, aprire un terminale ed eseguire:

~/odoo-dev/addons

Successivamente, fare login in Odoo ed attivare la modalità sviluppatore, presente nella pagina di configurazione dell'amministratore; da qui si aggiornano le liste degli addons presenti e successivamente i possono installare quelli desiderati.


Ritorna alla pagina principale di ODOO