Skip to content

Set up Platform Mesh locally

Use this how-to to bring up a local Platform Mesh environment on a Kind cluster. The result is a running portal, kcp endpoint, and the Platform Mesh runtime components needed to follow the tutorials.

Development preview

The local setup is intended for evaluation and development. It differs from production deployments in architecture, security configuration, and scalability.

Track progress and upcoming improvements on the project dashboard.

Prerequisites

Allocate at least 8 GB RAM and 6 CPUs to your container runtime.

Install:

  • Docker or Podman
  • Kind
  • kubectl
  • Helm
  • openssl
  • base64
  • mkcert
  • yq

Install the kubectl-kcp plugin if you want to run the example-data setup later.

Task is optional. It provides convenient command aliases, but the setup scripts can be run directly.

WSL2 users

WSL version 2.1.5 or higher is required with Docker Desktop WSL2 integration enabled. See the local setup README for mkcert details.

macOS Podman users

Set KIND_EXPERIMENTAL_PROVIDER=podman before running the setup.

Clone the setup repository

bash
git clone https://github.com/platform-mesh/helm-charts.git
cd helm-charts
git checkout v0.2.0
cd local-setup

Run the setup

Use one of the following options.

bash
# Full setup. Deletes any existing platform-mesh Kind cluster first.
task local-setup

# Faster iteration on an existing cluster.
task local-setup:iterate
bash
# Full setup. Deletes any existing platform-mesh Kind cluster first.
kind delete cluster --name platform-mesh
./local-setup/scripts/start.sh

# Faster iteration on an existing cluster.
./local-setup/scripts/start.sh

When the setup completes, it prints Installation Complete and shows the portal access details.

Setup duration

The initial setup typically takes 5-10 minutes, depending on network speed and machine performance.

Access the local services

Open:

  • Onboarding Portal: https://portal.localhost:8443
  • kcp API: https://localhost:8443

No hosts file configuration required

Modern browsers resolve *.localhost domains to 127.0.0.1, so organization subdomains like <organization-name>.portal.localhost work without /etc/hosts changes.

Certificate trust

The setup uses local certificates generated by mkcert. If the browser shows a certificate warning, run mkcert -install or see Troubleshoot local setup.

Verify the runtime components

The local setup deploys the Platform Mesh operator and the runtime components it manages. Key components include:

  • Platform Mesh operator
  • Portal
  • Kubernetes GraphQL gateway
  • kcp
  • OpenFGA
  • Keycloak
  • Account operator
  • Extension manager operator

For the architecture behind these components, see Architecture. For the exact component set per release, see Platform Mesh runtime.

EU and German government funding logos

Funded by the European Union – NextGenerationEU.

The views and opinions expressed are solely those of the author(s) and do not necessarily reflect the views of the European Union or the European Commission. Neither the European Union nor the European Commission can be held responsible for them.