Deploying HCL Commerce Version 9.1 with Docker Compose (for non-production usage)

You can deploy HCL Commerce Version 9.1 simply using Docker Compose. Generally, you deploy an authoring environment and a live environment to work together. In this standard HCL Commerce configuration, you update and modify your store in the authoring environment, and then propagate the changes to the live environment.

Important:
  • This environment should not be used for a live production site as it misses some required production grade components and considerations, such as security hardening, deployment orchestration and load balancing for high availability support, ingress routing, and performance tuning capabilities. To operate HCL Commerce Version 9.1 in a live production environment, you must deploy it in a Kubernetes cluster and commit further time and resources to performance and security considerations.

    With load balancing and ingress routing specifically, you can configure which services you want to expose externally, and restrict the remaining services within the cluster network. This configuration limits their access from and exposure to the wider Internet.

  • HCL Commerce Version 9.1.14.0 or laterHCL Commerce Docker Compose deployments do not support the use of the root user. Beginning in HCL Commerce 9.1.14.0, application container images are built to be run as a non-root user by default. This change has the potential to break your custom deployment. Therefore, you must review this change and its potential impacts. For more information, see HCL Commerce container users and privileges.

About this task

This section provides a method for deploying an authoring and live environment by using native Docker Compose scripts. Use this method to learn and understand how the authoring and live environments interact. You can also use this method to explore the different application topologies that are required for the various combinations of HCL Commerce solutions that are available. When you are ready to create a production environment to serve end-users, you will want to build a more complex system, for greater and more fine-grained control over your deployment.

  • For more information on planning your production environment, see Planning your production environment.
  • For more information on the various production environment topologies, based on the HCL Commerce search and store solutions, see HCL Commerce production environment overview.
  • The Docker-based deployment was simplified, and features additional automation in the 9.1.6.0 release.
    Specific improvements include:
    • A simplified directory structure for mounted volumes.
      • For the ease of import of essential files into your Docker images, without the need to create or recreate custom images;
      • For persistence of HCL Commerce demo data, in the event that your containers are taken offline or restarted.
      • HCL Commerce Version 9.1.12.0 or laterAutomated deployment of Docker images for use within an HCL Commerce development environment.
      For more information on mounted volumes, see The Docker Compose deployment /volumes/ directory structure and contents.
    • Improved deployment automation. Simply update the required environment information and run a script to configure and deploy HCL Commerce and related applications. This eliminates the need to manual edit your deployment files, which can be error-prone.

      For more information on deployment configuration, see The Docker Compose deployment env.sh configuration file.

Procedure