06.22.22.55.56     contact@sbosolutions.fr
Installer Odoo 14 sur UBUNTU 20.04 LTS
comment réaliser l'installation de Odoo version 14 sur un VPS Ubuntu ou sur un raspberry pi
4 janvier, 2021 par
Installer Odoo 14 sur UBUNTU 20.04 LTS
SBO Solutions, Sebastien Bossoutrot

Je vous propose à travers ce tutoriel l'installation de Odoo 14 Community Edition (CE)  
sur Ubuntu 20.04.1 LTS (Focal Fossa).

Nous utilisons de préférence un serveur VPS OVH pour la solution Odoo 14 CE (tel qu’utilisé par SBO Solutions pour le site web et le back-end de gestion.

Mais il est également possible d'utiliser un Raspberry Pi avec sa distribution lite.

La solution Odoo CE est celle que nous préconisons pour nos clients (TPE < 5p et Freelance) avec des besoins basiques couverts par Odoo CE dont la couverture fonctionnelle est déjà importante.

Voici quelques exemples (qui seront développés dans de futurs articles): 
- site web avec couplage avec leads CRM, 
- solution e-Learning de cours en ligne,   
- solutions e-commerce petit traffic, 
- solution CRM-ERP pour Freelance/StartUp/TPE,
- Marketing automation.

Si vous souhaitez plus d'informations, contactez-nous.

Ce tutoriel est utile si vous souhaitez mettre en place une version de test sur votre machine en local, ou sur une machine de développement, une partie de ce tuto est réutilisable pour un serveur de production, mais attention il ne contient pas les éléments de sécurisation du serveur ni l'installation du serveur web NGINX et la mise en place de votre domaine sécurisé en HTTPS. 

Vous êtes prêt alors c'est parti, nous allons travailler exclusivement dans le terminal UBUNTU. 

Nous partons du principe qu’une instance d’une machine Linux Ubuntu est disponible pour vous (VPS, docker, WSL2, RaspBerry Pi …) avec un utilisateur membre de SUDO et donc différent de root (dans la suite de ce tutoriel, nous allons prendre comme exemple l’utilisateur nommé : ubuntu)

Les aspects de sécurisation ne sont pas abordés dans ce tutoriel, faites appel de préférence à un professionnel pour cette partie.  Contactez-nous sur ce dernier point.

Étape 1 : mise à jour de votre Ubuntu.

Vous le faites certainement déjà régulièrement, mais il est toujours bon de commencer par un update/upgrade de son système.

    sudo apt update
    sudo apt upgrade

Étape 2 : installation de l'ensemble des librairies et dépendances

Commençons par l’installation de Python3 et de Pip3 :

    sudo apt install python3
    sudo apt install python3-pip

Installons maintenant les dépendances complémentaires :

    sudo apt install python-dev python3-dev libxml2-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev build-essential libssl-dev libffi-dev libmysqlclient-dev libjpeg-dev libpq-dev libjpeg8-dev liblcms2-dev libblas-dev libatlas-base-dev  

Dans le cas de l’utilisation d’un Raspberry, installer les libraries suivantes: libjpeg-dev, libmariadb-dev, libopenjp2-7, libtiff5

continuons l'ajout de dépendances:

    sudo apt install -y npm
    sudo ln -s /usr/bin/nodejs /usr/bin/node
    sudo npm install -g less less-plugin-clean-css
    sudo apt install -y node-less 

enfin nous allons installer l'outil Wkhtmltopdf dans la version 0.12.5 (la version 0.12.6 n'est pas compatible avec Odoo)

    sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.focal_amd64.deb
    sudo dpkg -i wkhtmltox_0.12.5-1.focal_amd64.deb
    sudo apt install -f

Rq: il y a une erreur à l'installation l'instruction sudo apt install -f permet de pallier à l'erreur.

Dans le cas de l’utilisation d’un Raspberry: prendre le Wkhtmltopdf suivant : 
https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.raspbian.stretch_armhf.deb

Étape 3 : installation et configuration de PostgreSQL

Odoo utilise un système de base de données relationnelle libre PostgreSQL.  (https://fr.wikipedia.org/wiki/PostgreSQL)

    sudo apt install postgresql
    sudo apt install postgresql-server-dev-all

Après l'installation réussie, nous allons créer un nouvel utilisateur (ubuntu) dans notre base de données:

    sudo su - postgres -c "createuser -s ubuntu" 2> /dev/null || true

Rq: vous n'êtes pas obligé de mettre un mot de passe à votre base de données, nous sommes ici sur un serveur de démo, test ou dev,  si vous êtes en production, c'est évidemment conseillé.

Dans le cas de l’utilisation d’un Raspberry: 
Installer les locales utf8 via sudo raspi-config (fr-FR et en-US)
Activer rfkill: sudo rfkill unblock 0

    sudo su - postgres
    psql
    ALTER USER ubuntu WITH SUPERUSER;
    \q
    exit

Étape 4 : récupération des sources et clonage depuis GitHub

Commençons par créer un répertoire Odoo dans /home/ubuntu

    mkdir /home/ubuntu/odoo

(Rappel: ubuntu est notre utilisateur par défaut dans ce tutoriel, pour vous c’est peut-être différent. À vous d’adapter)

Installons git :

    sudo apt intall git

On clone alors le répertoire Odoo14 CE depuis GitHub : 

    cd /home/ubuntu/odoo
    git clone https://github.com/odoo/odoo.git

le téléchargement sera effectué dans le répertoire /home/ubuntu/odoo

Étape 5 : installation des dépendances pour Odoo

Les dépendances nécessaires à la bonne exécution d’Odoo sont listées dans un fichier "requirements.txt" disponible dans le répertoire de Odoo  

L'installation se fait via l'instruction suivante:

    sudo pip3 install wheel
    sudo pip3 install -r /home/ubuntu/odoo/odoo/requirements.txt

Culture info: nous utilisons ici PIP qui est un gestionnaire de paquets pour Python (https://fr.wikipedia.org/wiki/Pip_(gestionnaire_de_paquets))

Étape 6 : Configuration de Odoo

Une fois que tout est correctement installé, nous allons configurer Odoo, commençons par créer un fichier de log avec les bons droits:

    sudo mkdir /home/ubuntu/odoo/log

Maintenant, créons un fichier de configuration (nous allons copier l'exemple fourni par Odoo):

        sudo cp /home/ubuntu/odoo/odoo/debian/odoo.conf /home/ubuntu/odoo/odoo.conf

éditons le fichier de configuration afin de le faire correspondre à notre besoin

        sudo nano /home/ubuntu/odoo/odoo.conf

le fichier de configuration devrait avoir les informations suivantes après modification:

        [options]
           ; This is the password that allows database operations:
           ; admin_passwd = admin
           db_host = False
           db_port = False
           db_user = ubuntu
           db_password = False
           addons_path = /home/ubuntu/odoo/odoo/addons
           logfile = /home/ubuntu/odoo/log/odoo.log
           http_port = 8071

db_password = votre mot de passe si vous en avez défini un à l'étape 4

Volontairement ici le fichier de configuration est simple, il existe une multitude d'autres options que nous ne détaillerons pas ici.

une fois la configuration effectuée, on ajoute les droits sur ce fichier:

    sudo chown ubuntu: /home/ubuntu/odoo/odoo.conf
    sudo chmod 640 /home/ubuntu/odoo/odoo.conf

Étape 7 : Création d'un service pour lancement de Odoo

Ajoutons un nouveau fichier de service dans le répertoire /etc/systemd/system nommé odoo.service

    sudo nano /etc/systemd/system/odoo.service

Copier coller les informations suivante dans ce fichier:

    [Unit]
        Description=Odoo
        Documentation=http://www.odoo.com
        [Service]
        # Ubuntu/Debian convention:
        Type=simple
        User=ubuntu
        ExecStart=/home/ubuntu/odoo/odoo/odoo-bin -c /home/ubuntu/odoo/odoo.conf
        [Install]
        WantedBy=default.target

Ajoutons les bonne permission pour ce fichier.

    sudo chmod 755 /etc/systemd/system/odoo.service
    sudo chown root: /etc/systemd/system/odoo.service
    sudo systemctl daemon-reload

Étape 8 : Testons maintenant l'installation Odoo

Vous êtes arrivé à la dernière étape, il est temps de tester votre installation, un petit redémarrage de votre machine ne fera pas de mal.

Une fois redémarrer, nous allons lancer les services :

(Il est possible de vérifier les statuts des services via l’instruction status)

    sudo service postgresql start
    sudo service odoo start

(Equivalent :sudo systemctl status xxxx )

Odoo est alors disponible à l'adresse

http://localhost:8071  (localhost ou votre ip)

Il ne reste plus qu'à créer votre base de données et installer vos applications.

Merci d'avoir suivi ce tuto, si vous avez besoin d'informations complémentaires, de compléments, quelque chose de pas clair, n’hésitez pas à nous contacter.