Déploiement de HCL Commerce version 9.1.6.0 à l'aide de Docker Compose (pour une utilisation hors production)

Vous pouvez déployer HCL Commerce Version 9.1 simplement à l'aide de Docker Compose. En général, vous déployez un environnement de création et un environnement opérationnel afin qu'ils fonctionnent ensemble. Dans cette configuration HCL Commerce standard, vous mettez à jour et modifiez votre magasin dans l'environnement de création, puis propagez les modifications apportées à l'environnement opérationnel.

HCL Commerce A compter de la version 9.1.12.0, le déploiement de Docker Compose peut également être utilisé pour faciliter l'installation de HCL Commerce Developer.
Important:
  • Cet environnement ne doit pas être utilisé pour un site de production opérationnel, car il manque certains composants et certaines considérations de niveau production requis, tels que le renforcement de la sécurité, l'orchestration du déploiement et l'équilibrage de charge pour la prise en charge haute disponibilité, le routage d'entrée et les capacités d'optimisation des performances. Pour exploiter HCL Commerce version 9.1 dans un environnement de production opérationnel, vous devez le déployer dans un cluster Kubernetes et consacrer davantage de temps et de ressources à des considérations de performance et de sécurité.

    Avec l'équilibrage de charge et le routage d'entrée en particulier, vous pouvez configurer les services que vous souhaitez exposer en externe et restreindre les services restants dans le réseau du cluster. Cette configuration limite leur accès et leur exposition à Internet au sens large.

  • HCL Commerce Version 9.1.14.0 or later HCL Commerce Les déploiements Docker Compose ne prennent pas en charge l'utilisation de l'utilisateur root. A partir de HCL Commerce 9.1.14.0, les images de conteneurs d'applications sont conçues pour être exécutées par défaut en tant qu'utilisateur non root. Cette modification peut potentiellement faire échouer votre déploiement personnalisé. Vous devez donc passer ce changement et ses impacts potentiels en revue. Pour plus d'informations, voir HCL Commerce utilisateurs et privilèges liés aux conteneurs.

Le déploiement basé sur Docker a été simplifié et propose une automatisation supplémentaire dans la version 9.1.6.0.

Les améliorations spécifiques sont les suivantes :
  • Une structure de répertoires simplifiée pour les volumes montés.
    • Pour faciliter l'importation de fichiers essentiels dans vos images Docker sans avoir à créer ou recréer des images personnalisées ;
    • Pour faire perdurer les données de démonstration de HCL Commerce si jamais vos conteneurs sont mis hors ligne ou redémarrés.
    • HCL Commerce Version 9.1.12.0 or laterDéploiement automatisé d'images Docker à utiliser dans un HCL Commerce development environment.
    Pour plus d'informations sur les volumes montés, voir Structure et contenu du répertoire /volumes/ du déploiement Docker Compose.
  • Automatisation améliorée du déploiement. Il suffit de mettre à jour les informations d'environnement requises et d'exécuter un script pour configurer et déployer HCL Commerce et les applications associées. Cela évite d'avoir à éditer manuellement vos fichiers de déploiement, ce qui peut entraîner des erreurs.

    Pour plus d'informations sur la configuration de déploiement, voir Fichier de configuration env.sh pour le déploiement de Docker Compose.

Before you begin

  • Procédez à Conditions préalables au déploiement de HCL Commerce Version 9.1 avec Docker Compose pour obtenir le logiciel requis et préparer la base de données de l'environnement au déploiement.
  • Passez en revue les différences entre un environnement de création et un environnement opérationnel.
    Réel
    Un environnement opérationnel inclut les fonctionnalités requises pour un site de production HCL Commerce en cours d'exécution et traite le trafic des utilisateurs finaux.
    Création
    Un environnement de création, communément appelé auth, inclut des fonctionnalités supplémentaires au-delà des capacités d'un environnement de production. Dans un environnement de création, les administrateurs de site ou les utilisateurs professionnels peuvent apporter des modifications à votre magasin, puis tester et afficher un aperçu des modifications. Une fois qu'elles sont confirmées comme étant correctes, les modifications peuvent être propagées à l'environnement de production. L'environnement de création dispose également d'espaces de travail activés. Cette fonctionnalité d'espace de travail permet aux utilisateurs professionnels de contrôler avec précision les modifications du site avant qu'elles ne soient propagées à l'environnement de production. Pour plus d'informations sur l'environnement de création, voir Environnement de création.
  • Examinez les topologies HCL Commerce disponibles. La principale distinction dans les topologies dépend de la solution de recherche qui est l'utilisateur.
    Déploiement de recherche basée sur Elasticsearch
    • Applications Commerce :
      • ts-app
      • ts-web
      • tooling-web
      • query
      • Facultatif : store-web
      • Facultatif : store
      • Facultatif : graphql
      • Facultatif : utils
      • Facultatif : xc
      • HCL Commerce Version 9.1.12.0 or laterFacultatif : approval-app
        • Tiers :
          • postgresql
      • HCL Commerce Version 9.1.13.0 or laterFacultatif : nextjs-store
    • Applications de données :
      • Recherche basée sur Commerce Elasticsearch.
        • nifi
        • data-query
        • ingest
        • registry
      • Tiers :
        • elasticsearch
        • zookeeper
        • redis
    Déploiement de recherche basée sur Solr
    • Applications Commerce (environnement de création) :
      • ts-app
      • ts-web
      • tooling-web
      • search_master
      • redis (tiers)
      • Facultatif : store-web
      • Facultatif : store
      • Facultatif : graphql
      • Facultatif : utils
      • Facultatif : xc
      • Facultatif : cache-app
      • HCL Commerce Version 9.1.12.0 or laterFacultatif : approval-app
        • Tiers :
          • postgresql
    • Applications Commerce (environnement opérationnel) :
      • ts-app
      • ts-web
      • tooling-web
      • search_repeater
      • search_slave
      • redis (tiers)
      • Facultatif : store-web
      • Facultatif : store
      • Facultatif : graphql
      • Facultatif : utils
      • Facultatif : xc
      • Facultatif : cache-app
      • HCL Commerce Version 9.1.12.0 or laterFacultatif : approval-app
        • Tiers :
          • postgresql

About this task

Cette section fournit une méthode de déploiement d'un environnement de création et opérationnel à l'aide de scripts Docker Compose natifs. Utilisez cette méthode pour apprendre et comprendre comment les environnements de création et opérationnel interagissent. Vous pouvez également utiliser cette méthode pour explorer les différentes topologies d'application requises pour les différentes associations de solutions HCL Commerce disponibles. Lorsque vous êtes prêt à créer un environnement de production pour servir les utilisateurs finaux, vous voudrez construire un système plus complexe, pour un contrôle plus grand et détaillé de votre déploiement.

  • Pour plus d'informations sur la planification de votre environnement de production, voir Planification de votre environnement de production.
  • Pour plus d'informations sur les différentes topologies de l'environnement de production, basées sur les solutions de recherche et de stockage HCL Commerce, voir HCL Commerce présentation de l'environnement de production.
  • Pour explorer le déploiement plus en détail ou pour un contrôle plus détaillé de votre déploiement, vous pouvez choisir un déploiement manuel personnalisé. Avec cette méthode, vous pouvez configurer manuellement vos fichiers de configuration de déploiement Docker Compose (docker-compose.yml) et d'environnement Docker (.env), créer des images Docker personnalisées pour votre déploiement et implémenter votre propre persistance de données.

Procedure

  1. Préparez vos volumes persistants.
    Le répertoire /volumes/ contient tous les fichiers persistants pour votre déploiement.

    Pour obtenir une description du répertoire /volumes/ et de son contenu, voir Structure et contenu du répertoire /volumes/ du déploiement Docker Compose.

    Pour préparer votre répertoire de volumes persistants :
    1. HCL Commerce Version 9.1.8.0 or laterFacultatif : configurez un partage NFS (Network File System) pour le volume persistant de l'outil Ressources. Cela n'est nécessaire que si vous utilisez la fonctionnalité de l'outil Ressources pour les environnements de création et opérationnel.
    2. Définissez les droits des fichiers pour vos volumes persistants.

      Certains volumes sont montés sur vos conteneurs en cours d'exécution et nécessitent des droits d'écriture.

      Définissez de façon récurrente l'accès en écriture sur /volumes/ pour vous assurer que celui-ci et tous les sous-répertoires contenus sont accessibles en écriture.

    3. Placez tous les fichiers requis dans leurs répertoires /volumes/ respectifs.
      • Pilotes de base de données pour les bases de données Oracle.
      • Certificats tiers ou autosignés.
      • HCL Commerce Version 9.1.9.0 or laterConfiguration LDAP.
      • Fichier de compte du service Google Analytics.
  2. Configurez votre déploiement et son environnement via la modification ou le remplacement du fichier de configuration env.sh.
    1. Ouvrez le fichier env.sh pour l'éditer.
    2. Modifiez les variables d'environnement et les paramètres de déploiement pour refléter l'environnement vous souhaitez déployer.
      Pour plus d'informations sur le fichier de configuration env.sh et sur les exigences de topologie de déploiement spécifiques, voir Fichier de configuration env.sh pour le déploiement de Docker Compose.
      HCL Commerce Version 9.1.10.0 or laterNote: Le fichier de configuration env.sh contient désormais des options supplémentaires pour activer les intégrations et les fonctions de HCL Commerce :
      • Intégration IBM MQ

        La configuration d'intégration de WebSphere Application Server pour l'intégration IBM MQ est simplifiée et automatisée. Fournissez les détails de votre intégration dans votre configuration de déploiement.

        Pour plus d'informations, voir Intégration d'IBM MQ à HCL Commerce.

      • Fonction Marketplace

        La fonction Marketplace de HCL Commerce a été introduite dans la version 9.1.10.0. En raison de son état de développement relativement précoce, elle est désactivée par défaut, sauf si elle est activée manuellement avant le déploiement.

        Pour plus d'informations sur l'activation de la fonction Marketplace, voir Activation de la fonctionnalité HCL Commerce Marketplace dans un déploiement basé sur Docker.

    3. Enregistrez une copie de sauvegarde avec un nom descriptif si vous souhaitez déployer ou annuler cette configuration ultérieurement.
  3. Générez automatiquement le fichier Docker Compose de déploiement et le fichier d'environnement Docker et démarrez le déploiement.

    Exécutez le script bash de déploiement.

    Dans une invite de commande, exécutez ./deploy.sh :

    Le script produit le fichier Docker Compose final et le fichier d'environnement Docker en fonction de la configuration spécifiée dans env.sh et met votre déploiement en ligne.

    Le fichier Docker Compose final sera docker-compose-commerce.yml pour le déploiement HCL Commerce, ou docker-compose-data.yml pour HCL Commerce Search with Elasticsearch.

    Le déploiement définira le projet sur commerce, de sorte que les services Docker créés auront le préfixe commerce_. Par exemple, commerce_txn_1.
    Important: Le déploiement doit être répété si votre topologie HCL Commerce nécessite le déploiement de la solution basée sur Elasticsearch distincte. Voir Déploiement de HCL Commerce Search with Elasticsearch.
  4. Vérifiez que tous les conteneurs sont en bon état.

Results

Le déploiement est créé et démarré. Vous pouvez désormais interagir avec chaque service HCL Commerce en cours d'exécution et explorer chaque solution HCL Commerce.
ServiceURL
Management Center for HCL Commercehttps://commerceHost:8000/lobtools
Magasin B2C Emeraldhttps://commerceHost:6443/Emerald
Magasin B2B Sapphirehttps://commerceHost:6443/Sapphire
HCL Commerce Version 9.1.13.0 or laterNextjs Ruby storehttps://commerceHost:6443/
Magasin B2C Aurorahttps://commerceHost:8443/wcs/shop/en/auroraesite
Magasin B2B Aurorahttps://commerceHost:8443/wcs/shop/en/aurorab2besite
Interface utilisateur Swagger du service Query :https://searchHost:30921/search/resources/swagger-ui.html#/
Interface utilisateur Swagger du service Ingest :https://searchHost:30801/swagger-ui.html#/
Nifihttp://searchHost:30600/nifi
Registre Nifihttp://searchHost:30400/nifi-registry

What to do next

Pour annuler le déploiement de HCL Commerce dans un environnement Linux, vous pouvez exécuter le script teardown.
./teardown.sh
Si vous déployez HCL Commerce Search with Elasticsearch sur Windows sans environnement bash pour exécuter le script teardown, vous pouvez utiliser la commande suivante pour annuler le déploiement.
docker-compose -p PROJECT_NAME -f DOCKER_COMPOSE_FILE down
Note: Si commerce et data sont déployés sur la même machine, vous devez exécuter ce script deux fois avec le fichier env.sh correspondant présent.