Odoo devinst: differenze tra le versioni

Da PNLUG.
(Creata pagina con "Installazione ODOO dai sorgenti. Con questa procedura si installa ODOO dai sorgenti, questo consente una maggiore versatilità. La pagina è ancora in preparazione.")
 
Riga 4: Riga 4:
  
 
La pagina è ancora in preparazione.
 
La pagina è ancora in preparazione.
 +
 +
== INSTALLAZIONE DI ODOO ==
 +
 +
Le note che seguono potrebbero non essere adeguate per tutte le versioni di
 +
linux e di odoo, in caso di problemi serve risolvere di volta in volta
 +
cercando le soluzioni in base agli errori riscontrati, però la sequenza
 +
è corretta e ci dovrebbero essere poche difficoltà.
 +
 +
Ora assicuriamoci che il nostro sistema sia aggiornato:
 +
 +
<pre>
 +
sudo apt update && sudo apt upgrade
 +
</pre>
 +
 +
 +
=== INSTALLAZIONE DI WKHTMLTOX ===
 +
 +
wkhtmltopdf è richiesto per produrre documenti in pdf.
 +
Per installarlo ho preferito partire dai binari precompilati presenti nel sito:
 +
http://wkhtmltopdf.org/downloads.html
 +
 +
quindi ho fatto:
 +
<pre>
 +
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/wkhtmltopdf /usr/local/bin/wkhtmltopdf
 +
sudo ln -s /opt/wkhtmltoimage /usr/local/bin/wkhtmltoimage
 +
</pre>
 +
 +
Naturalmente la versione può essere diversa.
 +
 +
=== INSTALLAZIONE DI POSTGRESQL ===
 +
 +
Il server postgres quando viene installato ha un utente amministratore di nome
 +
postgres e non utilizza password. Se si utilizza postgres solo in locale questo
 +
va bene, ma se si accede da remoto è meglio inserire una password. Si deve
 +
anche creare un utente postgres con il nome del proprio utente, in questo modo
 +
odoo accede al db con l'utente che lancia lo script.
 +
 +
<pre>
 +
sudo apt install postgresql-server-dev-all
 +
sudo su - postgres -c "createuser -s $USER"
 +
</pre>
 +
 +
E' utile installare phppgadmin che fornisce una interfaccia web per fare la
 +
manutenzione del database.
 +
https://kishorer.in/2015/12/21/installing-postgresql-and-phppgadmin-in-ubuntu-14-04/
 +
 +
<pre>
 +
sudo apt install lamp-server^
 +
sudo apt install phpgyadmin
 +
</pre>
 +
 +
nel file:
 +
 +
/etc/phppgadmin/config.inc.php
 +
 +
ho modificato la linea:
 +
 +
<pre>
 +
$conf['extra_login_security'] = false;
 +
</pre>
 +
 +
da true a false, in modo da permettere a phppgadmin di eseguire il login senza
 +
password.
 +
 +
poi:
 +
 +
/etc/postgresql/9.5/main/pg_hba.conf
 +
 +
<pre>
 +
local  all            all                                    trust
 +
host    all            all            127.0.0.1/32            trust
 +
</pre>
 +
 +
diavviamo i daemon
 +
 +
<pre>
 +
sudo service apache2 restart
 +
sudo service postgresql start
 +
</pre>
 +
 +
 +
<!--
 +
 +
<pre>
 +
</pre>
 +
===============================================================================
 +
 +
 +
 +
se non ci sono stati errori, ora con http://localhost/phppgadmin si dovrebbe
 +
essere in grado di amministrare il database.
 +
 +
===============================================================================
 +
                        ACCESSO A PHPPGADMIN DA REMOTO
 +
===============================================================================
 +
 +
Se si installa postgres su una macchina remota e serve accedere al di fuori
 +
di localhost si deve attivare l'accesso con password. Per fare questo nel
 +
file
 +
 +
/etc/apache2/conf.d/phppgadmin
 +
 +
si modificano le direttive:
 +
#deny from all
 +
#allow from 127.0.0.0/255.0.0.0 ::1/128
 +
allow from all
 +
 +
e nel file
 +
 +
/etc/postgresql/9.5/main/postgresql.conf
 +
 +
listen_addresses = '*'
 +
 +
si riavviano i server con:
 +
 +
sudo service apache2 restart
 +
sudo service postgresql start
 +
 +
===============================================================================
 +
                                  DOWNLOAD
 +
===============================================================================
 +
 +
ho fatto una cartella
 +
 +
mkdir ~/odoo-dev
 +
cd ~/odoo-dev
 +
 +
ho scaricato la versione OCB di odoo e la localizzazione italiana con:
 +
 +
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 ed in altri modi.
 +
 +
===============================================================================
 +
                      INSTALLAZIONE DELLE DIPENDENZE
 +
===============================================================================
 +
 +
se si installano direttamente le dipendenze come spiegato nei vari manuali,
 +
si va incontro ad errori perché le dipendenze necessitano della installazione
 +
preventiva si alcune librerie. La prima volta ho risolto le dipendenze a
 +
tentativi ed errori, poi ho raccolto tutto quello che serve:
 +
 +
sudo apt install pip
 +
sudo apt install python-dev
 +
sudo apt install python-pip
 +
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 pip install --upgrade pip
 +
sudo 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 con
 +
 +
cd ~/odoo-dev/OCB
 +
sudo pip install -r requirements.txt
 +
 +
Se non ci sono errori siamo pronti a far partire odoo
 +
 +
===============================================================================
 +
                                AVVIO DI ODOO
 +
===============================================================================
 +
 +
Ho scelto di attivare i plugin della localizzazione italiana e di preparare
 +
un ambiente per sviluppare.
 +
La versione OCB 10 di odoo come script di avvio usa il file odoo-bin prima
 +
era odoo.py ma fa la stessa cosa.
 +
 +
cd ~/odoo-dev
 +
mkdir addons
 +
OCB/odoo-bin scaffold mymodule addons
 +
 +
con il comando scaffold preparo un modulo vuoto che poi userò per fare
 +
esperimenti.
 +
 +
a questo punto ho fatto un piccolo script per lanciare odoo con i parametri
 +
che mi servono, ho aggiunto i percorsi degli addons, ma si possono inserire
 +
anche altri parametri, il file si chiama:
 +
 +
~/odoo-dev/odoo.sh
 +
-----------------------------------------------------------------------------
 +
#!/bin/sh
 +
ODOOHOME=~/odoo-dev
 +
$ODOOHOME/OCB/odoo-bin --addons-path=$ODOOHOME/OCB/addons,$ODOOHOME/addons_ita,$ODOOHOME/addons
 +
-----------------------------------------------------------------------------
 +
 +
quindi rendo disponibili gli addons standard di odoo più gli addons localizzati
 +
italiani e quelli che svilupperò io.
 +
 +
ho reso exeguibile lo script con:
 +
 +
chmod +x odoo.sh
 +
 +
ora posso avviare odoo con:
 +
 +
sh ~/odoo-dev/odoo.sh
 +
 +
o semplicemente con
 +
 +
cd ~/odoo-dev
 +
./odoo.sh
 +
 +
La prima volta che evvio odoo vengono chiesti il nome del database e le
 +
credenziali di accesso ed eventualmote si possono caricare i dati di esempio.
 +
 +
A questo punto viene creato il database e popolate le tabelle, questo potrebbe
 +
richiedere un po' di tempo.
 +
 +
Odoo mantiene dei cookies per ricordare l'ultimo database in uso, se si
 +
cancellano i cookies di localhost all'avvio viene chiesto di scegliere il
 +
database.
 +
 +
===============================================================================
 +
                            INSTALLAZIONE MODULI ODOO
 +
===============================================================================
 +
 +
Se si desidera provare altri addons, si possono semplicemente scaricare da
 +
github e depositare nella cartella
 +
 +
~/odoo-dev/addons
 +
 +
poi entrati in odoo si attiva la modalità sviluppatore e si ricaricano gli
 +
addons.
 +
 +
 +
http://wiki.pnlug.it/index.php?title=Odoo
 +
-->

Versione delle 20:43, 28 ott 2016

Installazione ODOO dai sorgenti.

Con questa procedura si installa ODOO dai sorgenti, questo consente una maggiore versatilità.

La pagina è ancora in preparazione.

INSTALLAZIONE DI ODOO

Le note che seguono potrebbero non essere adeguate per tutte le versioni di linux e di odoo, in caso di problemi serve risolvere di volta in volta cercando le soluzioni in base agli errori riscontrati, però la sequenza è corretta e ci dovrebbero essere poche difficoltà.

Ora assicuriamoci che il nostro sistema sia aggiornato:

sudo apt update && sudo apt upgrade


INSTALLAZIONE DI WKHTMLTOX

wkhtmltopdf è richiesto per produrre documenti in pdf. Per installarlo ho preferito partire dai binari precompilati presenti nel sito: http://wkhtmltopdf.org/downloads.html

quindi ho fatto:

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/wkhtmltopdf /usr/local/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltoimage /usr/local/bin/wkhtmltoimage

Naturalmente la versione può essere diversa.

INSTALLAZIONE DI POSTGRESQL

Il server postgres quando viene installato ha un utente amministratore di nome postgres e non utilizza password. Se si utilizza postgres solo in locale questo va bene, ma se si accede da remoto è meglio inserire una password. Si deve anche creare un utente postgres con il nome del proprio utente, in questo modo odoo accede al db con l'utente che lancia lo script.

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

E' utile installare phppgadmin che fornisce una interfaccia web per fare la manutenzione del database. https://kishorer.in/2015/12/21/installing-postgresql-and-phppgadmin-in-ubuntu-14-04/

sudo apt install lamp-server^
sudo apt install phpgyadmin

nel file:

/etc/phppgadmin/config.inc.php

ho modificato la linea:

$conf['extra_login_security'] = false;

da true a false, in modo da permettere a phppgadmin di eseguire il login senza password.

poi:

/etc/postgresql/9.5/main/pg_hba.conf

local   all             all                                     trust
host    all             all             127.0.0.1/32            trust

diavviamo i daemon

sudo service apache2 restart
sudo service postgresql start