Prerequisites
To successfully install Precomposer, you need a Kubernetes cluster. While LoadBalancer configurations may vary across providers, Precomposer is compatible with any Kubernetes cluster. The following providers have been tested:
- DigitalOcean
- Amazon AWS (EKS)
- Microsoft Azure
Cluster Requirements
Ensure your Kubernetes cluster meets these requirements:
- Nodes: At least 2 nodes, each with a minimum of 4 GB RAM (8 GB recommended).
- Volume Creation: The cluster must have permissions to create volumes.
- For Amazon clusters: Use EBS volumes and ensure the EBS CSI Driver is installed and configured with the correct role.
- Fresh Cluster: The cluster should be new, with no pre-configurations except for core components like CoreDNS.
Note: After installation, all services are scaled to 1 instance with minimal load. For scaling or handling higher loads, increase the number of nodes and their memory capacity.
Preparation
Required Accounts
You will need accounts or credentials for the following services:
- Kubernetes Cluster (see details below)
- Commercetools
- Commercetools Checkout Application (optional)
- Storyblok
- GitHub
- SendGrid
- Algolia (optional)
For instructions on obtaining these credentials, refer to the Installation Guide.
Cluster Access
To access a Kubernetes cluster, you need to provide the kubeconfig file.
This file is used by kubectl
to authenticate and manage the cluster. It is typically named kubeconfig.yaml
.
Retrieving the Kubeconfig File
Generic Kubernetes Clusters
You can display a minimal version of the kubeconfig file using the following command:
kubectl config view --minify --flatten
DigitalOcean Clusters
You can download the kubeconfig file directly from the DigitalOcean web interface:
Cluster Overview -> Settings -> Actions (top-right) -> Download Config
.
Additional Access Requirements for Specific Providers
Some Kubernetes cluster providers require additional credentials:
Amazon AWS Clusters
In addition to the kubeconfig file, you must provide the following environment variables:
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
For more details on managing kubeconfig files, refer to the Kubernetes Documentation (opens in a new tab).
Automatic import of Demo Data (Optional)
Precomposer includes integrated demo data for testing purposes, which is automatically imported with the default settings. This demo data is available for the following platforms:
- Commercetools: The data is largely based on the public demo data of the Sunrise shop provided by Commercetools.
- Storyblok: Some basic stories for the Storefront.
To enable the demo data import, you need to set the GitHub secret STORYBLOK_MGMT_TOKEN
.
If you prefer to use your own demo data, detailed instructions are provided in the TODO section.