26 signed Container-Images, ein Helm-Chart, zwei Tenancy-Modi. Daten bleiben bei dir — Compliance-, Datenresidenz-, oder Air-Gap-Anforderungen kein Problem. Identische Images wie die Pipelet-SaaS, identische Updates, identische Monitoring-Hooks.
Alle Stations-, Session-, CDR- und Driver-Daten leben in deiner DB, in deinem Cluster, in deinem Land. Kein Cross-Border-Transfer, keine US-Cloud-Act-Belastung — relevant für regulierte Operatoren und kommunale Versorger.
Cosign-signed Images mit SPDX-SBOMs für Vulnerability-Audits. NetworkPolicy + RLS + readOnlyRootFilesystem out-of-the-box. Zertifizierungen wie ISO 27001 oder TISAX laufen über deine Infra-Dokumentation, nicht über uns.
Quellcode-Zugriff über die Pipelet-Repos, Helm-Chart als OCI-Artifact, alle 26 Service-Images aus offenen Build-Pipelines. Export-Recht auf alle Daten via Postgres-dumps. Im Worst-Case läuft dein Setup auch ohne Pipelet weiter.
Sizing-Defaults treffen 50–250 Charger pro Tenant. Horizontal scaling per Helm-Values, vertikal per Postgres-Tier. Wir haben Kunden, die mit 30 Stations starten und in 18 Monaten auf 5.000 wachsen — gleicher Stack, größere DB.
Die komplette Suite — OCPP-Broker + Server, CPMS, Driver-/Fleet-/Admin-/EMP-Portale, OCPI-Roaming, Plug & Charge, Billing, Automation, MCP-Server, Developer-Portal, Homepage. Alle aus dem gleichen Build, alle auf ghcr.io.
Alles unter einem Chart, OCI-publiziert nach oci://ghcr.io/munichseb/charts/pipelet. Zwei Tenancy-Modi: shared (eine DB, viele Tenants per RLS) oder isolated (1 Release pro Kunde). Postgres + Redis als Subcharts oder BYO managed.
Jedes Image ist via Sigstore keyless signiert (kein Schlüsselmanagement nötig). SPDX-JSON Software Bill of Materials als Attestation angehängt. Verifikation client-side mit cosign verify.
Pro Kunde ein verschlüsseltes Bundle mit Pull-Token, customer-spezifischer config.json, values.customer.yaml mit deinen Hosts/Tenant-IDs, optional mTLS-Material für Hubject. Step-by-Step Setup-README inklusive.
Auf Anfrage liefern wir ein offline-fähiges Bundle: alle Images als regctl-Dump, Sigstore-Roots vorgefetched, Helm-Chart als .tgz. Importierbar in jede private Registry — kein ghcr.io-Zugriff post-install nötig.
Read-only Deploy-Keys auf alle 9 Pipelet-Repos. Du kannst auditieren, anpassen, lokale Branches halten. Übernehmen wir Bug-Fixes? Ja — als Pull-Requests gegen unser main. Eigene Forks? Auch ok, mit Support-Modell-Anpassung.
Helm Pre-Install-Hook führt 3 idempotente DB-Migrationen sequentiell aus, dann starten Service-Pods. Failover via Service-Mesh oder klassische Ingress-Sticky-Sessions. Rolling Updates pro Service unabhängig.
Wenn du von einer anderen CPMS-Plattform kommst: der OCPP-Broker switcht einzelne Stations live um, ohne Big-Bang. Daten-Import-Skripte für Stations, Tariffs, Customers. 4–8 Wochen typische Ramp-up-Phase.
| SaaS | Marketplace | Self-Hosted | |
|---|---|---|---|
| Wer betreibt | Pipelet GmbH | Du, in Azure | Du, überall |
| Daten-Standort | EU-Frankfurt | Deine Azure-Region | Frei wählbar |
| Time-to-Production | ~10 min | ~30 min | ~1 Tag (inkl. Cluster-Setup) |
| Quellcode-Zugriff | nur Read | nur Read | Read + Forking |
| Compliance-Boundary | Pipelet-Verträge | Microsoft + Pipelet | Du allein |
| Air-Gap-fähig | — | — | Ja, mit Bundle |
| Updates | automatisch | helm upgrade per Click | helm upgrade, dein Pace |
| Skalierung | automatisch | AKS-managed | frei wählbar (HPA / VPA) |
| Sinnvoll ab | jeder Größe | Azure-only Setups | Compliance-/Regulierungs-Anforderungen |
# 1. Image-Pull-Token aus dem Onboarding-Bundle anlegen
kubectl create namespace pipelet
kubectl -n pipelet create secret docker-registry pipelet-ghcr-pull \
--docker-server=ghcr.io \
--docker-username=munichseb \
--docker-password="$(cat ghcr-pull-token.txt)"
# 2. Customer-spezifische config.json als Secret
kubectl -n pipelet create secret generic pipelet-config \
--from-file=config.json=./config.json
# 3. Helm-Chart aus dem OCI-Registry installieren
helm install pipelet oci://ghcr.io/munichseb/charts/pipelet \
--version 0.1.0 \
-n pipelet \
-f my-customer.yaml \
--set externalConfigSecret=pipelet-config
# 4. (Optional) Image-Signaturen verifizieren
cosign verify ghcr.io/munichseb/pipelet-cpms-core:0.1.0 \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity-regexp "https://github.com/munichseb/.+/build-images.yml@.+"
Vollständige Anleitung mit allen values.yaml-Optionen, Tenancy-Setup und Operator-Hinweisen: Tech-Doku im Developer-Portal →
Self-Hosting ist nicht "Click + Go". Bei jeder Customer-Installation arbeiten wir die folgenden 6 Schritte gemeinsam ab — typischerweise in 1–2 Working Sessions:
Nein. Per default sind 21 Services aktiv — die 5 opt-in (Test-Tools wie ChargerSim + EMP-Sim, plus Hubject-Bridge) brauchen explizite enable-Flags. Auch von den 21 Default-Services kann man pro Modul/Use-Case weitere ausschalten.
Postgres ≥ 14 ist Voraussetzung. Das Helm-Chart kann eine in-cluster Bitnami-Postgres ausrollen (für Dev/Eval ok), für Production empfehlen wir Azure Database for PostgreSQL Flexible Server, AWS RDS, Aiven oder Crunchy Bridge.
Lizenzpreis ist eine Funktion von Charger-Anzahl + aktivierten Modulen. Plus Support-Tier (Bronze/Silber/Gold mit verschiedenen SLAs). Konkrete Zahlen kommen mit der Beratung — wir besprechen vorher dein Setup, weil 30 Charger mit reinem CPMS andere Konditionen haben als 1.500 mit OCPI + PnC + Billing.
Wir veröffentlichen Updates via Helm-Chart-Versions auf ghcr.io. Critical-Security-Patches kommen out-of-band per Mail mit Upgrade-Pfad. Du entscheidest wann du upgradest — typische Customer-Cadenz ist alle 4–6 Wochen, kritische Patches innerhalb von 24–48h.
Ja. Helm-Values decken Sizing, Replicas, Storage-Classes, Ingress-Annotations, NetworkPolicy-Regeln ab. Tieferer Custom-Code ist über eigene Forks möglich — wir liefern dann gegen die Forks Patches statt direkt deployen, mit Kosten-Impact für Support.
Postgres-Dump + DNS-Cutover. Der Switch von Self-Hosted nach Pipelet-SaaS dauert eine Wartungsnacht — alle Daten kommen 1:1 mit, weil Schema und Image-Versionen identisch sind. Andersherum genauso machbar.