Odoo est le logiciel professionnel tout-en-un le plus populaire au monde. Il offre une gamme d'applications commerciales, y compris CRM, site Web, commerce électronique, facturation, comptabilité, fabrication, entrepôt, gestion de projet, inventaire et bien plus encore, toutes intégrées de manière transparente.
Odoo11 nécessite Python 3.5 qui n'est pas disponible dans les référentiels CentOS. Pour cette raison, nous ne pouvons pas installer le package Odoo via yum à partir du référentiel Odoo.
Soit nous exécutons Odoo dans un conteneur Docker, soit nous l'installons dans un environnement virtuel Python.
Dans ce didacticiel, nous vous expliquerons comment installer Odoo 11 à l'aide de la source Git et de l'environnement virtuel Python sur une machine CentOS 7.
Avant de commencer #
Connectez-vous à votre machine CentOS en tant qu'utilisateur sudo et mettez à jour le système avec les derniers packages :
sudo yum update Activez le référentiel EPEL en saisissant :
sudo yum install epel-release Nous installerons les packages Python 3.5 à partir du référentiel Software Collections (SCL).
En activant SCL, vous aurez accès aux nouvelles versions des langages de programmation et des services qui ne sont pas disponibles dans les référentiels principaux. Activez le référentiel SCL avec la commande suivante :
sudo yum install centos-release-scl Installez les packages Python 3.5, avec la commande suivante :
sudo yum install rh-python35
Installez enfin git , pip et tous les outils nécessaires pour créer des dépendances Odoo :
sudo yum install git gcc wget nodejs-less libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel postgresql-devel Créer un numéro d'utilisateur Odoo
Créez un nouvel utilisateur système et un groupe avec le répertoire personnel /opt/odoo qui exécutera le service Odoo :
sudo useradd -m -U -r -d /opt/odoo -s /bin/bash odoo Vous pouvez nommer l'utilisateur comme vous le souhaitez, assurez-vous simplement de créer un utilisateur PostgreSQL avec le même nom. Installer et configurer PostgreSQL #
Installez le serveur PostgreSQL et créez un nouveau cluster de bases de données PostgreSQL :
sudo yum install postgresql-serversudo postgresql-setup initdb
Une fois l'installation terminée, activez et démarrez le service PostgreSQL :
sudo systemctl enable postgresqlsudo systemctl start postgresql
Créez un utilisateur PostgreSQL avec le même nom que l'utilisateur système précédemment créé, dans notre cas odoo :
sudo su - postgres -c "createuser -s odoo" Installer Wkhtmltopdf #
Le wkhtmltox Le package fournit un ensemble d'outils de ligne de commande open source qui peuvent rendre HTML en PDF et divers formats d'image. Pour imprimer des rapports PDF, vous aurez besoin du wkhtmltopdf outil. La version recommandée pour Odoo est 0.12.1 qui n'est pas disponible dans les dépôts officiels CentOS 7.
Pour télécharger et installer la version recommandée, exécutez les commandes suivantes :
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.1/wkhtmltox-0.12.1_linux-centos7-amd64.rpmsudo yum localinstall wkhtmltox-0.12.1_linux-centos7-amd64.rpm
Installer et configurer Odoo 11 #
Nous installerons Odoo à partir du référentiel GitHub afin de mieux contrôler les versions et les mises à jour. Nous utiliserons également virtualenv qui est un outil pour créer des environnements Python isolés.
Avant de commencer le processus d'installation, assurez-vous d'avoir [basculé vers l'utilisateur] "odoo":
sudo su - odoo
Pour confirmer que vous êtes connecté en tant que odoo utilisateur, vous pouvez utiliser la commande suivante :
whoami Nous pouvons maintenant commencer le processus d'installation, cloner d'abord l'odoo à partir du référentiel GitHub :
git clone https://www.github.com/odoo/odoo --depth 1 --branch 11.0 /opt/odoo/odoo11 Activez les collections de logiciels afin que nous puissions accéder aux binaires Python 3.5 :
scl enable rh-python35 bash Créez un nouvel environnement virtuel pour notre installation Odoo avec :
cd /opt/odoopython3 -m venv odoo11-venv
activer l'environnement :
source odoo11-venv/bin/activate et installez tous les modules Python requis :
pip3 install -r odoo11/requirements.txt Si vous rencontrez des erreurs de compilation lors de l'installation, assurez-vous d'avoir installé toutes les dépendances requises répertoriées dans le Before you begin section. Une fois l'installation terminée, désactivez l'environnement et revenez à votre utilisateur sudo à l'aide des commandes suivantes :
deactivate exit Si vous envisagez d'installer des modules personnalisés, il est préférable d'installer ces modules dans un répertoire séparé. Pour créer un nouveau répertoire pour les modules personnalisés, exécutez :
sudo mkdir /opt/odoo/odoo11-custom-addonssudo chown odoo: /opt/odoo/odoo11-custom-addons
Ensuite, nous devons créer un fichier de configuration :
/etc/odoo11.conf[options]
; This is the password that allows database operations:
admin_passwd = superadmin_passwd
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /opt/odoo/odoo11/addons
; If you are using custom modules
; addons_path = /opt/odoo/odoo11/addons,/opt/odoo/odoo11-custom-addons
N'oubliez pas de changer le superadmin_passwd vers quelque chose de plus sécurisé et ajustez le addons_path si vous utilisez des modules personnalisés. Créer un fichier d'unité systemd #
Pour exécuter odoo en tant que service, nous allons créer un odoo11.service fichier d'unité dans le /etc/systemd/system/ répertoire avec le contenu suivant :
[Unit]
Description=Odoo11
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo11
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/usr/bin/scl enable rh-python35 -- /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /etc/odoo11.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Notifier systemd que nous avons créé un nouveau fichier unité et démarré le service Odoo en exécutant :
sudo systemctl daemon-reloadsudo systemctl start odoo11
Vous pouvez vérifier l'état du service avec la commande suivante :
sudo systemctl status odoo11 ● odoo11.service - Odoo11
Loaded: loaded (/etc/systemd/system/odoo11.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2018-03-28 20:13:30 UTC; 6s ago
Main PID: 16174 (scl)
CGroup: /system.slice/odoo11.service
├─16174 /usr/bin/scl enable rh-python35 -- /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /etc/odoo11.conf
├─16175 /bin/bash /var/tmp/sclihoNjg
└─16178 /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /etc/odoo11.conf
et s'il n'y a pas d'erreurs, vous pouvez activer le service Odoo pour qu'il démarre automatiquement au démarrage :
sudo systemctl enable odoo11 Si vous souhaitez voir les messages enregistrés par le service Odoo, vous pouvez utiliser la commande ci-dessous :
sudo journalctl -u odoo11 Tester l'installation #
Ouvrez votre navigateur et tapez :http://<your_domain_or_IP_address>:8069
En supposant que l'installation est réussie, un écran semblable au suivant apparaît :
Si vous ne pouvez pas accéder à la page, votre pare-feu bloque probablement le port 8069.