Installation d’Akeneo PIM 5.0 – OVH Kimsufi – Ubuntu 20.04

Ce tutoriel est plus au moins une traduction de la documentation officielle d’installation d’Akeneo PIM 5.0 sous Ubuntu 20.04 avec quelques petits ajouts. J’ai choisi la méthode manuelle.

Pour l’installation de ce logiciel, j’ai décidé de prendre un petit serveur dédié avec Ubuntu 20.04.

J’ai reçu beaucoup de messages me demandant ce que je pensais d’Akeneo PIM après deux ans d’utilisation. Pour moi, ce type de logiciel est indispensable si vous avez beaucoup de produit et beaucoup de canaux de ventes. Particulièrement si votre catalogue est complexe, avec beaucoup d’attributs de tout type (couleur, taille, id_prestashop, Amazon ASIN, EAN13, Images …). C’est dommage que Odoo n’intègre pas de PIM digne de ce nom, mais la particularité d’Akeneo PIM est la facilité de travailler avec les imports/exports CSV et XLSX et Excel. En combinant le PIM, Excel et les macros et un ERP comme Odoo, vous n’aurez plus aucun problème pour gérer l’écosystème de votre entreprise. Vous gagnerez beaucoup de temps pour remplir les bases de données de votre Prestashop, Magento, Amazon Seller ou même réaliser des catalogues classiques. Des connecteurs entre les différents outils existent. Je ne les ai pas testés, mais j’essayerai de le faire prochainement.

Installation des prérequis

MySQL 8.0

Lors de l’installation de MySQL 8.0, vous devrez choisir la méthode d’authentification. Sélectionnez Use Legacy Authentication Method. L’autre méthode Strong Password Encryption n’est pas pris en charge par Akeneo PIM.

On vérifie l’état du système.

La sortie devrait ressembler à quelque chose comme ci-dessous, montrant que le service Odoo est actif et en cours d’exécution :

PHP 7.4

L’installation de PHP et de ses extensions.

Composer v2

Installation par apt

Il est possible de l’installer par les paquets d’Ubuntu.

Parfois, c’est la version 1 qui s’installe par les paquets et ceci entraîne des erreurs liées à l’attribution de la mémoire. Il faut alors lancer la commande :

Si vous avez une erreur Command « self-update » is not defined., Il faut rajouter les paramètres –install-dir /usr/bin –filename composer au script d’installation fourni par la documentation de composer.

Source : https://blog.packagist.com/composer-2-0-is-now-available/

Installation par le script automatique

Les détails de cette installation peuvent être consultés sur la documentation de Composer.

Elasticsearch 7.10

On installe la clé PGP et les paquets par le dépôt officiel.

La documentation d’Akeneo PIM indique qu’il est fortement conseillé d’augmenter la variable du noyau Linux MAX_MAP_COUNT. Voici comment la mettre à jour. La première commande sera effective sur la session en cours et la seconde pour chaque redémarrage du serveur.

Les détails de cette installation peuvent être consultés sur la documentation de Elasticsearch.

Apache

N’oubliez de désactiver php5 si vous importez une ancienne installation d’Apache avec mod_php :

Configuration du système

MySQL

On crée les base de données nécessaire au bon fonctionnement du PIM. On nommera la base de donnée akeneo_pim.

PHP

On configure le fichier CLI php.ini.

Et on modifie les valeurs :

Pour date.timezone, utilisez la bonne nomenclature disponible sur la documentation de PHP. Europe/Paris par exemple pour la France.

Apache

Nous allons maintenant créer le virtual host pour Apache pour pointer le répertoire d’installation d’Akeneo PIM sur votre nom de domaine. Nous utiliserons les valeurs /home/pim-community-standard pour le répertoire d’installation et domain_name.com pour le nom de domaine.

Et on remplit le fichier :

Et on active la configuration pour Apache :

On vérifie l’état du système

La sortie devrait ressembler à quelque chose comme ci-dessous :

Puis on rajoute le virtual host :

Node 12

Pour consulter la version de Node.js que vous venez d’installer, tapez la commande :

Yarn

On se connecte en root

Pour consulter la version de Node.js que vous venez d’installer, tapez la commande :

On quitte root

Installation d’Akeneo PIM

Récupération des sources

Pour le répertoire d’installation, nous utiliserons /home/pim-community-standard. On peut installer Akeneo PIM avec composer en ayant installer le paquet correspondant :

Ou télécharger l’archive directement, cette archive est la version icecat, c’est à dire avec des données d’exemple :

Initialisation d’Akeneo PIM

On configure le fichier .env

Et on modifie les valeurs si dessous en prenant soin d’utiliser celles de votre base de donnée pour les variables APP_DATABASE.

et aussi le fichier .env.local

En effet, j’ai eu des erreurs de configurations lorsque je n’avais pas créé ce denier fichier. Le script d’installation ne pouvait pas créer la base de donnée.

C’est une erreur de configuration des variables d’environnement docker. Je ne suis pas un expert du domaine, mais idéalement il faudrait créer un environnement propre à l’installation.

Lancement d’Akeneo PIM en mode production

On crée l’utilisateur principal pour se connecter :

Ou plus rapidement :

On attribue les droits www-data au répertoire du PIM

Nous pouvons maintenant accéder à Akeneo PIM par l’url http://domain_name.com avec l’utilisateur que nous venons de créer.

Démarrage de Elasticsearch au boot

Tâches CRON du PIM

Entrez dans le tableau des tâches automatisées de www-data :

Et rajouter les valeurs fournies par la documentation d’Akeneo :

Installation de Supervisor

Petit paquet très utile puisqu’il permet d’exécuter automatiquement les tâches de mis à jour des données du PIM.

Et remplir le fichier avec ces valeurs :

  • Modifier la valeur des chemins de la deuxième ligne
    • /path/to/php avec votre exécutable php
    • /path/to/your/pim avec votre dossier PIM
  • Modifier la valeur de my_user avec l’utilisateur qui utilise php-fpm (normalement, www-data)

Source : https://webkul.com/blog/process-control-in-akeneo/

Erreurs Possibles

Si les importations et les exportations bloquent sur le status « Starting »

Voir le chapitre Installation de Supervisor

Que faire si Elasticsearch consomme trop de mémoire ?

Editez le fichier de configuration Java d’Elasticsearch :

Et on ajoute les lignes ci-dessous pour attribuer 4GB en minimum et maximum :

Vous pouvez conssulter le billet de blog de Ashnik qui discute de la manière d’optimiser la configuration d’Elasticsearch. Globalement, pour Elasticsearch, il est recommandé d’avoir 64GB de RAM et d’attribuer moins de 50% de la totalité de la mémoire disponible, c’est-à-dire  30GB environ. Mais pour des petites utilisations, 4GB est suffisant.

Si l’erreur « No alive nodes found in your cluster » est affichée

Tester les commandes :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *