diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e9b107..ca0db4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -86,3 +86,4 @@ First release with all 5 design-doc phases complete. ISO boots and runs K8s pods - Rewrote dev-vm.sh for macOS: bsdtar ISO extraction, Homebrew mkfs.ext4 detection, direct kernel boot, TCG acceleration, port 8080 forwarding - Kubeconfig now served via HTTP on port 8080 (serial console truncates base64 lines) - Added 127.0.0.1 and 10.0.2.15 to API server SANs for QEMU port forwarding +- dev-vm.sh now works on Linux: fallback ISO extraction via isoinfo or loop mount, KVM auto-detection, platform-aware error messages diff --git a/README.md b/README.md index 9e962ae..fc4a340 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ An immutable, bootable Linux distribution purpose-built for [KubeSolo](https://github.com/portainer/kubesolo) — Portainer's ultra-lightweight single-node Kubernetes. -> **Status:** All 5 phases complete. Boots and runs K8s workloads. +> **Status:** All 5 phases complete. Boots and runs K8s workloads. Portainer Edge Agent tested and connected. ## What is this? @@ -47,6 +47,24 @@ Or build everything at once inside Docker: make docker-build ``` +After boot, retrieve the kubeconfig and manage your cluster from the host: + +```bash +curl -s http://localhost:8080 > ~/.kube/kubesolo-config +export KUBECONFIG=~/.kube/kubesolo-config +kubectl get nodes +``` + +### Portainer Edge Agent + +Pass Edge credentials via boot parameters: + +```bash +./hack/dev-vm.sh --edge-id=YOUR_EDGE_ID --edge-key=YOUR_EDGE_KEY +``` + +Or configure via [cloud-init YAML](cloud-init/examples/portainer-edge.yaml). + ## Requirements **Build host:** @@ -189,7 +207,7 @@ Metrics include: `kubesolo_os_info`, `boot_success`, `boot_counter`, `uptime_sec | `make build-cross` | Cross-compile for amd64 + arm64 | | `make docker-build` | Build everything in Docker | | `make quick` | Fast rebuild (re-inject + repack + ISO) | -| `make dev-vm` | Launch QEMU dev VM | +| `make dev-vm` | Launch QEMU dev VM (Linux + macOS) | | `make test-all` | Run all tests | ## Documentation