Installer Odoo en local en multi-instances (odoo8, odoo9, odoo10, odoo11) est aussi important sur un serveur que sur mon PC portable, pour pouvoir montrer les sites web et applications Odoo à mes prospects !
Document de réfénce : \NUC LAN\ Install Multi Instances Odoo.doc
Log in via SSH
ssh user@vps_IP [-p num-port] su - (pour se loguer en root)
Update the system
apt-get update && apt-get upgrade
Install all necessary packages
# apt-get install git virtualenv wkhtmltopdf python-pip python-dev python-virtualenv libevent-dev gcc libjpeg-dev libxml2-dev libssl-dev libsasl2-dev node-less libldap2-dev libxslt-dev # apt-get install python-dateutil python-docutils python-feedparser python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-psycopg2 python-psutil python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi poppler-utils python-pip python-passlib python-decorator gcc python-dev mc bzr python-setuptools python-markupsafe python-reportlab-accel python-zsi python-yaml libpython2.7-stdlib python-openssl python-egenix-mxdatetime python-usb python-serial lptools make python-pydot python-psutil python-paramiko poppler-utils python-pdftools antiword python-requests python-xlsxwriter python-suds python-ofxparse python-gevent # apt-get install libxml2-dev libxslt-dev python-dev lib32z1-dev
Install PostgreSQL
Installing PostgreSQL with apt is quick and easy: 9.5 ou 9.6 ???
apt-cache search postgresql-9
apt-get install postgresql-9.6 postgresql-server-dev-9.6 systemctl enable postgresql.service systemctl start postgresql.service
systemctl status postgresql.service
ps ax|grep postgres (pour vérifier que PostGres est lancé)
Create Odoo users
dans les noms : minuscules ‘-‘ sont interdits, utiliser les ‘_’
sudo adduser --system --group odoo13 --home /opt/odoo13
Create PostgreSQL database users
sudo su - postgres -c "createuser --createdb --username postgres --no-createrole --no-superuser --no-password odoo13"
Install Odoo : 1ere instance
First, we will install Odoo version 10. To switch to Odoo user run:
sudo su - odoo13 -s /bin/bash
Clone the Odoo 13.0 branch from github:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 --single-branch /opt/odoo13
Create python virtual environment and install all requirements:
cd /opt/odoo13 virtualenv ./venv source ./venv/bin/activate pip install -r requirements.txt
Switch back your user:
exit
Configure Odoo
Configurons Odoo 13 pour écouter sur le port 8013.
Configurons Odoo 14 pour écouter sur le port 8014 …
Configurons un même master admin password.
You can also set the ports numbers according to your liking.
sudo nano /etc/odoo13.conf
[options] admin_passwd = your_strong_admin_password db_host = False db_port = False db_user = odoo13 db_password = False addons_path = /opt/odoo13/addons logfile = /var/log/odoo13.log xmlrpc_port = 8013
Change owner pour les dossiers Odoo :
touch /var/log/odoo13.log chown odoo13:odoo13 /var/log/odoo13.log chown odoo13:odoo13 /opt/odoo13/ chown odoo13:odoo13 /opt/odoo13/* -R
Create SystemD scripts:
nano /lib/systemd/system/odoo13.service
[Unit] Description=odoo13 Requires=postgresql.service After=postgresql.service [Service] Type=simple PermissionsStartOnly=true User=odoo13 Group=odoo13 SyslogIdentifier=odoo13 ExecStart=/opt/odoo13/odoo-bin -c /etc/odoo13.conf (pour Odoo10 et suivants) ExecStart=/opt/odoo9/venv/bin/python2 /opt/odoo9/openerp-server -c /etc/odoo9.conf (pour Odoo9) [Install] WantedBy=multi-user.target
Etape finale : Enable & Start Odoo instances on boot:
sudo systemctl enable odoo13.service sudo systemctl start odoo13.service ps ax|grep odoo (pour vérifier le nombre d'instances Odoo lancées) sudo systemctl status odoo_pjm.service (pour voir si erreurs ?) se connecter sur navig : IP-NUC:8013 ? Si ça ne marche pas ... $ more /var/log/odoo13.log
Ajout d’autres instances Odoo : >>> clonage auto : clodoo.sh <<<
1) Créer le User Odoo odoo9
sudo adduser –system –group odoo9 –home /opt/odoo9
( Si on s’est trompé dans le dossier HOME : verifier: more /etc/passwd
reparer : usermod -m -d /opt/odoo9 odoo9 )
2) Créer le User PostGres : odoo9
sudo su – postgres -c « createuser –createdb –username postgres –no-createrole –no-superuser –no-password odoo9 »
3) Cloner de la 1ere instance Odoo :
cp -Rupv /opt/odoo9/ /opt/odoo9/
chown odoo9:odoo9 -R /opt/odoo9/
4) Clôner le fichier CONF Odoo
cp /etc/odoo8.conf /etc/odoo9.conf
sed -i -e « s/odoo8/odoo9/g » /etc/odoo9.conf
sed -i -e « s/8008/8009/g » /etc/odoo9.conf (change port 8008 en 8009..)
5) Clôner le fichier SERVICE Odoo
cp /lib/systemd/system/odoo8.service /lib/systemd/system/odoo9.service
sed -i -e « s/odoo8/odoo9/g » /lib/systemd/system/odoo9.service
6) Mettre en place le service de la 2e instance :
sudo systemctl enable odoo9.service
sudo systemctl start odoo9.service
ps ax|grep odoo (pour vérifier le nombre d’instances Odoo lancées)
sudo systemctl status odoo9.service (pour voir si erreurs ?)
7) Tester : Se connecter sur navig : IP-NUC:8009 ? OK !
8) Gérer (stop/start/status) le service(s) Odoo avec « systemctl » et « systemd »
$ sudo systemctl status (montre tous les services actifs)
$ sudo systemctl status odoo8.service (montre l’état du service Odoo : On / Off?)
$ sudo systemctl stop odoo8.service
$ sudo systemctl start odoo8.service
python3.7 -m pip install .
python3.7 -m pip install -r requirements.txt <<<<—- en SU
478 nano /lib/systemd/system/odoo13.service
479 sudo systemctl start odoo13.service
480 systemctl daemon-reload
481 sudo systemctl start odoo13.service
482 sudo systemctl status odoo13.service
486 chown odoo13:odoo13 odoo13/ -R
498 ifconfig —–> IP = 51.75.255.146
499 nano /etc/rc.local
500 reboot
505 more /etc/odoo13.conf —> Port = 8013
507 more /var/log/odoo13.log
509 df -h
510 history
Acces Web : http://51.75.255.146:8013