Odoo est une suite d'outils logiciels de gestion d'entreprise comprenant, par exemple, le CRM, le commerce électronique, la facturation, la comptabilité, la fabrication, l'entrepôt, la gestion de projet et la gestion des stocks.
Dans ce tutoriel, nous allons vous montrer comment installer Odoo 12 dans un environnement virtuel utilisant Ubuntu 20.04.
L'installation d'Odoo 12 sur Ubuntu 20 présente de nombreux défis en raison de problèmes de compatibilité. Certains des modules Python utilisés sur Odoo 12 sont obsolètes, ce qui rend difficile leur installation sur Ubuntu 20.04.
Commençons par l'installation.
1 1. Mise à jour du système
sudo apt update -y && apt upgrade -y
2 2. Installation des dépendances Python
Étant donné qu'Odoo est construit avec Python, nous devons installer toutes les dépendances d'Odoo sur Python.
sudo apt install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libxslt-dev libzip-dev libjpeg-dev zlib1g-dev libldap2-dev libsasl2-dev python3-setuptools node-less node-clean-css
3 3. Installation de la base de données
Odoo utilise PostgreSQL comme base de données. Pour installer le serveur PostgresSQL sur Ubuntu, exécutez la commande suivante.
sudo apt install postgresql -y
4 4. Création d'un utilisateur système et PostgreSQL
Nous devons d'abord créer un utilisateur système nommé odoo1 2 et définissez le répertoire d'accueil sur /opt/odoo1 2. Pour ce faire, nous devons exécuter la commande suivante.
sudo useradd -m -d /opt/odoo12 -U -r -s /bin/bash odoo12
Après avoir créé l'utilisateur système, nous devons créer un PostgreSQL user et nous l'appellerons également odoo12 .
sudo su - postgres -c "createuser -s odoo12"
5 5. Installation de wkhtmltopdf
Wkhtmltopdf est un outil de ligne de commande open source qui restitue le HTML au format PDF à l'aide du moteur de rendu Qt WebKit. Cet outil est nécessaire pour imprimer des rapports PDF dans Odoo.
La version de wkhtmltopdf que nous allons installer est la version 0.12.5 puisque notre serveur est Ubuntu 20.04.
Nous devons d'abord télécharger wkhtmltopd f 0.12.5.
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
Rendez-le ensuite exécutable.
chmod +x wkhtmltox_0.12.5-1.bionic_amd64.deb
Après avoir rendu le fichier exécutable, installez-le.
sudo apt install ./wkhtmltox_0.12.5-1.bionic_amd64.deb
6 6. Installation et configuration d'Odoo 12
Nous devons d'abord passer à l'utilisateur odoo1 2.
su - odoo12
Clonage du référentiel Odoo12 depuis Github.
git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo12/odoo
Créez un environnement virtuel pour votre application Odoo.
cd /opt/odoo12
python3 -m venv myodoo-venv
Activer l'environnement virtuel
source myodoo-venv/bin/activate
Après avoir activé l'environnement virtuel, nous allons installer les dépendances Odoo. Les dépendances des modules Python nécessaires pour exécuter Odoo sont définies dans le fichier requirements.txt. Mais avant de continuer, nous devons changer le Psycopg2 directive définie sur requirements.txt vers Psycopg2-binary==2.8.6 .
Remarque : Changer le Psycopg2 directive dans requirement.txt Le fichier est important car la version obsolète d'Odoo 12 ne fonctionnera pas sur Ubuntu 20.04 .
Modifions requirements.txt et ajoutez psycopg2-binary==2.8.6
nano odoo/requirements.txt
Mettre un commentaire sur psycopg2==2.8.3 et psycopg2==2.7.3.1 et ajoutez psycopg2-binary==2.8.6
Babel==2.3.4
chardet==3.0.4
decorator==4.0.10
docutils==0.12
ebaysdk==2.1.5
gevent==1.1.2 ; sys_platform != 'win32' and python_version < '3.7'
gevent==1.5.0 ; python_version >= '3.7'
greenlet==0.4.10 ; python_version < '3.7'
greenlet==0.4.14 ; python_version >= '3.7'
html2text==2016.9.19
Jinja2==2.10.1
libsass==0.12.3
lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7'
lxml==4.2.3 ; sys_platform != 'win32' and python_version >= '3.7'
lxml ; sys_platform == 'win32'
Mako==1.0.4
MarkupSafe==0.23
mock==2.0.0
num2words==0.5.6
ofxparse==0.16
passlib==1.6.5
Pillow==4.0.0 ; python_version < '3.7'
Pillow==6.1.0 ; python_version >= '3.7'
psutil==4.3.1; sys_platform != 'win32'
psutil==5.6.3; sys_platform == 'win32'
psycopg2-binary==2.8.6
#psycopg2==2.7.3.1; sys_platform != 'win32' and python_version < '3.8'
#psycopg2==2.8.3; sys_platform == 'win32' or python_version >= '3.8'
pydot==1.2.3
pyldap==2.4.28; sys_platform != 'win32'
pyparsing==2.1.10
PyPDF2==1.26.0
pyserial==3.1.1
python-dateutil==2.5.3
pytz==2016.7
pyusb==1.0.0
qrcode==5.3
reportlab==3.3.0
requests==2.20.0
suds-jurko==0.6
vatnumber==1.2
vobject==0.9.3
Werkzeug==0.11.15 ; sys_platform != 'win32'
Werkzeug==0.16.0 ; sys_platform == 'win32'
XlsxWriter==0.9.3
xlwt==1.3.*
xlrd==1.0.0
pypiwin32 ; sys_platform == 'win32'
Ce qui précède devrait être le contenu de votre requirements.txt . Sauvons notre requirements.txt et fermez le fichier.
Procédons à l'installation de tous les modules Python requis avec pip3.
(myodoo-venv) pip3 install wheel
(myodoo-venv) pip3 install Pillow
(myodoo-venv) pip3 install -r odoo/requirements.txt
Après avoir installé les modules Python, nous devons désactiver l'environnement virtuel.
(myodoo-venv) $ deactivate
Nous devons maintenant créer un répertoire Addons pour les addons tiers.
mkdir /opt/odoo12/custom-addons
Sortons de l'utilisateur odoo12 et revenons à notre utilisateur sudo.
exit
Nous devons maintenant créer le fichier de configuration Odoo.
sudo nano /etc/odoo12.conf
Insérez le contenu ci-dessous :
[options]
; This is the password that allows database operations:
admin_passwd = admin_password
db_host = False
db_port = False
db_user = odoo12
db_password = False
xmlrpc_port = 8069
logfile = /var/log/odoo12/odoo.log
addons_path = /opt/odoo12/odoo/addons,/opt/odoo12/custom-addons
Assurez-vous de changer le "admin_password " à votre mot de passe préféré, puis enregistrez et fermez le fichier.
Ensuite, nous devons créer un répertoire de journaux.
sudo mkdir /var/log/odoo12
Définissez la propriété sur odoo1 2.
sudo chown odoo12:root /var/log/odoo12
7 7. Créer un service Odoo 12 Systemd
Pour gérer notre Odoo 12, nous devons créer un fichier systemd.
sudo nano /etc/systemd/system/odoo12.service
Ajoutez ou insérez ce qui suit.
[Unit]
Description=Odoo12
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo12
PermissionsStartOnly=true
User=odoo12
Group=odoo12
ExecStart=/opt/odoo12/myodoo-venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Enregistrez et fermez le fichier et rechargez le démon systemd pour appliquer les modifications :
sudo systemctl daemon-reload
Démarrez et activez le service Odoo12.
sudo systemctl enable --now odoo12
Vérifiez l'état du service Odoo12.
systemctl status odoo12
Félicitations, vous pouvez désormais accéder à votre application Odoo 12 sur http://ipaddress:8069
8 Conclusion
Dans ce tutoriel, vous avez appris à installer Odoo 12 sur Ubuntu 20.04. Si vous trouvez ce tutoriel utile, vous pouvez consulter notre tutoriel sur Odoo 14 et Odoo 13 sur Ubuntu 20.04.