feat: bump dependencies and add kubectl, k9s, Flux CLI
Update pinned versions: Node.js 22→24 LTS, Helm 3.17→4.1, Go 1.23→1.26. Add kubectl, k9s, and Flux CLI to the container image. Update MCP sidecars: kubernetes v0.0.59, flux-operator v0.45.0, mcp-helm v1.3.3, homeassistant 7.1.0. Bump chart version to 2.7.0. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -70,7 +70,7 @@ Container start
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `Dockerfile` | Image definition — installs Chrome, VSCode, Helm, gh CLI, kubeseal, Claude Code, OpenCode, Crush, LSP servers (pyright, typescript-language-server, gopls, clangd, rust-analyzer, lua-language-server, jdtls, kotlin-language-server, intelephense); creates non-root user (UID 1000) |
|
||||
| `Dockerfile` | Image definition — installs Chrome, VSCode, Helm, gh CLI, kubectl, k9s, Flux CLI, kubeseal, Claude Code, OpenCode, Crush, LSP servers (pyright, typescript-language-server, gopls, clangd, rust-analyzer, lua-language-server, jdtls, kotlin-language-server, intelephense); creates non-root user (UID 1000) |
|
||||
| `scripts/init-repo.sh` | Configures git credentials, clones GitHub repo(s), generates multi-root workspace file |
|
||||
| `scripts/startapp.sh` | Calls init-repo.sh then opens VSCode in the workspace |
|
||||
| `chart/` | Helm chart for Kubernetes deployment |
|
||||
|
||||
+20
-3
@@ -60,7 +60,7 @@ exec /usr/bin/google-chrome-stable \\\n\
|
||||
chmod +x /usr/local/bin/google-chrome
|
||||
|
||||
# Install Node.js LTS via NodeSource
|
||||
ARG NODE_MAJOR=22
|
||||
ARG NODE_MAJOR=24
|
||||
RUN curl -fsSL https://deb.nodesource.com/setup_${NODE_MAJOR}.x | bash - && \
|
||||
apt-get install -y nodejs && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
@@ -91,7 +91,7 @@ RUN CRUSH_VERSION=$(curl -sL https://api.github.com/repos/charmbracelet/crush/re
|
||||
rm -rf /tmp/crush*
|
||||
|
||||
# Install Helm CLI for Kubernetes chart management
|
||||
ARG HELM_VERSION=3.17.1
|
||||
ARG HELM_VERSION=4.1.3
|
||||
RUN curl -fsSL "https://get.helm.sh/helm-v${HELM_VERSION}-linux-amd64.tar.gz" | \
|
||||
tar -xz --strip-components=1 -C /usr/local/bin linux-amd64/helm && \
|
||||
chmod +x /usr/local/bin/helm
|
||||
@@ -117,13 +117,30 @@ RUN KUBESEAL_VERSION=$(curl -sL https://api.github.com/repos/bitnami-labs/sealed
|
||||
tar -xz -C /usr/local/bin kubeseal && \
|
||||
chmod +x /usr/local/bin/kubeseal
|
||||
|
||||
# Install kubectl CLI for Kubernetes cluster management
|
||||
RUN KUBECTL_VERSION=$(curl -sL https://dl.k8s.io/release/stable.txt) && \
|
||||
curl -fsSL "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" -o /usr/local/bin/kubectl && \
|
||||
chmod +x /usr/local/bin/kubectl
|
||||
|
||||
# Install k9s terminal UI for Kubernetes
|
||||
RUN K9S_VERSION=$(curl -sL https://api.github.com/repos/derailed/k9s/releases/latest | jq -r '.tag_name') && \
|
||||
curl -fsSL "https://github.com/derailed/k9s/releases/download/${K9S_VERSION}/k9s_Linux_amd64.tar.gz" | \
|
||||
tar -xz -C /usr/local/bin k9s && \
|
||||
chmod +x /usr/local/bin/k9s
|
||||
|
||||
# Install Flux CLI for GitOps operations
|
||||
RUN FLUX_VERSION=$(curl -sL https://api.github.com/repos/fluxcd/flux2/releases/latest | jq -r '.tag_name' | sed 's/^v//') && \
|
||||
curl -fsSL "https://github.com/fluxcd/flux2/releases/download/v${FLUX_VERSION}/flux_${FLUX_VERSION}_linux_amd64.tar.gz" | \
|
||||
tar -xz -C /usr/local/bin flux && \
|
||||
chmod +x /usr/local/bin/flux
|
||||
|
||||
# ── LSP servers for Claude Code language intelligence ──
|
||||
|
||||
# npm-based LSP servers: Python (pyright), TypeScript/JavaScript, PHP
|
||||
RUN npm install -g pyright typescript-language-server typescript intelephense
|
||||
|
||||
# Install Go runtime and gopls LSP server
|
||||
ARG GO_VERSION=1.23.6
|
||||
ARG GO_VERSION=1.26.1
|
||||
RUN curl -fsSL "https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz" | tar -xz -C /usr/local && \
|
||||
/usr/local/go/bin/go install golang.org/x/tools/gopls@latest && \
|
||||
mv /root/go/bin/gopls /usr/local/bin/gopls && \
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@ apiVersion: v2
|
||||
name: devcontainer
|
||||
description: Dev Container with AI coding agents and MCP sidecars
|
||||
type: application
|
||||
version: 2.6.0
|
||||
version: 2.7.0
|
||||
appVersion: "latest"
|
||||
keywords:
|
||||
- development
|
||||
|
||||
+4
-4
@@ -93,7 +93,7 @@ mcp:
|
||||
enabled: true
|
||||
image:
|
||||
repository: quay.io/containers/kubernetes_mcp_server
|
||||
tag: v0.0.57
|
||||
tag: v0.0.59
|
||||
port: 8080
|
||||
resources:
|
||||
requests:
|
||||
@@ -108,7 +108,7 @@ mcp:
|
||||
enabled: true
|
||||
image:
|
||||
repository: ghcr.io/controlplaneio-fluxcd/flux-operator-mcp
|
||||
tag: v0.41.1
|
||||
tag: v0.45.0
|
||||
port: 8081
|
||||
resources:
|
||||
requests:
|
||||
@@ -124,7 +124,7 @@ mcp:
|
||||
enabled: false
|
||||
image:
|
||||
repository: ghcr.io/zekker6/mcp-helm
|
||||
tag: v1.3.1
|
||||
tag: v1.3.3
|
||||
port: 8012
|
||||
resources:
|
||||
requests:
|
||||
@@ -139,7 +139,7 @@ mcp:
|
||||
enabled: false # Requires HOMEASSISTANT_URL and HOMEASSISTANT_TOKEN
|
||||
image:
|
||||
repository: ghcr.io/homeassistant-ai/ha-mcp
|
||||
tag: "6.7.1"
|
||||
tag: "7.1.0"
|
||||
port: 8087
|
||||
resources:
|
||||
requests:
|
||||
|
||||
Reference in New Issue
Block a user