πΊοΈ Project Roadmap
LaraKube CLI is an ecosystem built on three pillars: the CLI (the engine), the Console (the brain), and the Docs (the map). This page is an honest snapshot β what's shipped, what's designed and coming next, and the longer-term vision. Items in "Next up" have written designs; dates are intentionally loose because we'd rather ship right than ship on a calendar.
π’ Shipped β Foundationsβ
The cost-effective, single-VPS path, end to end β plus the schema that lets one blueprint grow.
- CLI: Zero-host-dependency orchestration engine (builds, manifests, deploys).
- CLI: The Single-Node Hero path β provision a $6β12 VPS, deploy, and GitOps via GitHub Actions.
- CLI: Per-environment blueprint β each environment sets its own deployment strategy (
single-node/multi-node-ha), ingress (Traefik / Nginx / AWS ALB), managed services, hostnames, and cloud connection. - CLI: Managed-cluster overlay knobs β namespace override, ServiceAccount + IRSA annotations, image-pull-secret control, and ingress-annotation passthrough, so generated overlays drop into EKS / GKE / AKS / DOKS.
- CLI: Two apps, one server β multiple projects on a single node, isolated by namespace (see Two Apps, One Server).
- CLI β Air-Gapped Enterprise Bundles π¦: compile your entire stack β app image, Kubernetes, Traefik, database, Redis, MinIO, TLS certificates β into a single folder for fully offline, on-premise delivery.
bundle:buildassembles the kit;bundle:installruns a guided wizard on the customer's server. Includes--swap=<size>for 1 GB VPS stability and--skip-imagesfor fast re-configuration without re-importing image tarballs. See Air-Gapped Bundles. - CLI: Portable CLI-free wrapper so teammates can run the lifecycle without installing the binary.
- CLI β Plex ποΈ: multiple apps share one Commons β a Postgres or MySQL/MariaDB database, Redis, Meilisearch, and S3 (SeaweedFS or MinIO) β each tenant getting its own isolated database, login, Redis logical DB, and bucket. Commands:
plex:init | plex:join | plex:status | plex:leave | plex:remove | plex:destroy | plex:export. Validated on a single-node VPS via both manuallarakube cloud:deployand GitHub Actions; multi-node (DOKS) is still being validated (see "Next up"). See Two Apps, One Server and Two Environments, One Server. - CLI β Multi-environment Plex π:
stagingandproductionof the same app as separate tenants on one Plex node β environment-aware tenant identifiers, isolated DB + Redis logical DB + S3 bucket per env, separate GHA workflows per branch. Validated end-to-end on a $12 VPS. See Two Environments, One Server. - CLI β
plex:resourcesβοΈ: interactively tune memory limits and PVC storage sizes for Plex Commons services without re-runningplex:init. See Commons Resource Tuning. - CLI β Namespace-scoped deploy credentials π: both
larakube cloud:deployand the GitHub Actions workflow deploy as a per-app, per-environmentdeployerServiceAccount locked to its own namespace β your admin kubeconfig never leaves your machine, and CI holds only a namespace-scoped token. Validated on a single-node VPS via both manual deploy and GitHub Actions (see Surgical Credentials). - CLI β Server hardening:
cloud:provisionhardens the box (UFW default-deny, fail2ban, automatic security updates, key-only SSH, and a guarded disable-remote-root-login);cloud:hardenre-applies it to an already-provisioned server. - CLI β Teammate RBAC π₯: per-person, namespace-scoped kube access with no SSH β
cluster:grant <environment> --name <person> [--read|--edit|--admin](built-inview/edit/admin). Environment-first: in a project you name an env and it targets that env's namespace and its own cluster context (a literal namespace still works standalone). One identity across many apps, instant upgrade/downgrade,context:importonboarding,cluster:users <env>to see who has access (--scopeaudits a deploy SA's rules), andcluster:revoke --nameoff-boarding. Replaces the old SSH-teammate flow. (Per-person OIDC/SSO is the longer-term graduation path.) - CLI β Per-environment registry: publish each environment's image to GHCR or Docker Hub, driving both
cloud:deploy's registry push and the generated GitHub Actions workflow. (AWS ECR / Google Artifact Registry / custom registries are next up.) - CLI β Multi-node storage strategy ποΈ: multi-node apps default to stateless (uploads on S3/Spaces, sessions/cache on Redis β a Plex Commons supplies both, and
cloud:deploywarns on anything still local). Apps that need a real shared cross-node folder can opt in withcloud:provision:nfs+sharedStorage(in-cluster NFS βlarakube-nfsRWX class). In-cluster NFS is experimental β it works on some clusters but not DOKS (mount hangs); see Shared Storage. - Console: High-fidelity Kubernetes Control Plane (Filament).
- Docs: Linear learning path, Blueprint Anatomy, and the Scaling Journey.
π‘ Next up β Planned (designs written)β
Closing the gap from "single VPS" to "any cluster, shared or isolated." These have specs and are the active focus.
- CLI β Plex on multi-node ποΈ: Plex is validated on a single-node VPS via both manual
larakube cloud:deployand GitHub Actions; running the shared Commons across a multi-node cluster (DOKS) is the remaining validation. - CLI β DigitalOcean Kubernetes (DOKS) end-to-end: the tooling shipped in v0.14.0 β
cloud:provision:doks(Traefik + LoadBalancer IP), managed-cluster identity viacloud.context, and per-envstorageClassβ but a clean managed multi-node deploy is still being validated end-to-end. - CLI β More registries: extend per-environment publishing to AWS ECR, Google Artifact Registry, and custom registries (GHCR and Docker Hub already ship).
- CLI β GitLab CI/CD: generate a
.gitlab-ci.ymlpipeline alongside the existing GitHub Actions workflow.
π΅ Later β Longer-term visionβ
Bigger bets, once the foundation above is solid.
- CLI: Autoscaling (Horizontal Pod Autoscaler) for production workloads.
- CLI β Truly-HA shared filesystem: a
ReadWriteManystorage class without the single-NFS-pod SPOF β CephFS / Longhorn /csi-driver-nfsor a managed filer β for teams that need both a shared cross-node folder and high availability (today'scloud:provision:nfsis the experimental, single-pod stopgap). - Console: Multi-cluster fleet management from one dashboard.
- Console: Real-time Prometheus / Grafana monitoring built in.
- Security: Automated security audits of production manifests.
- Ecosystem: A marketplace for specialized "Masterpiece Blueprints."
π‘ Suggest a featureβ
LaraKube is built for the community. If you have an idea that would make your life easier as a Laravel Artisan, please open an issue on the LaraKube CLI GitHub.