|
|
|
@@ -56,13 +56,25 @@ exec /usr/bin/google-chrome-stable \\\n\
|
|
|
|
|
"$@"\n' > /usr/local/bin/google-chrome && \
|
|
|
|
|
chmod +x /usr/local/bin/google-chrome
|
|
|
|
|
|
|
|
|
|
# Install Node.js (LTS version for Happy Coder)
|
|
|
|
|
# Install Node.js LTS (required by Happy Coder)
|
|
|
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \
|
|
|
|
|
apt-get install -y nodejs && \
|
|
|
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
|
|
# Install Happy Coder and Claude Code globally
|
|
|
|
|
RUN npm install -g happy-coder @anthropic-ai/claude-code
|
|
|
|
|
# Install Happy Coder globally via npm
|
|
|
|
|
RUN npm install -g happy-coder
|
|
|
|
|
|
|
|
|
|
# Cache-bust: tools below fetch "latest" at build time — a changing ARG
|
|
|
|
|
# forces Docker to re-run these layers instead of serving stale cache.
|
|
|
|
|
ARG TOOLS_CACHEBUST=0
|
|
|
|
|
|
|
|
|
|
# Install Claude Code via native installer (no Node.js dependency)
|
|
|
|
|
RUN CLAUDE_VERSION=$(curl -fsSL https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/latest) && \
|
|
|
|
|
echo "Installing Claude Code ${CLAUDE_VERSION}" && \
|
|
|
|
|
curl -fsSL "https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/${CLAUDE_VERSION}/linux-x64/claude" \
|
|
|
|
|
-o /usr/local/bin/claude && \
|
|
|
|
|
chmod +x /usr/local/bin/claude && \
|
|
|
|
|
claude --version
|
|
|
|
|
|
|
|
|
|
# Install OpenCode AI coding agent
|
|
|
|
|
RUN OPENCODE_VERSION=$(curl -sL https://api.github.com/repos/opencode-ai/opencode/releases/latest | jq -r '.tag_name') && \
|
|
|
|
@@ -84,9 +96,12 @@ 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
|
|
|
|
|
|
|
|
|
|
# Install VSCode
|
|
|
|
|
RUN wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o /usr/share/keyrings/packages.microsoft.gpg && \
|
|
|
|
|
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list && \
|
|
|
|
|
# Install VSCode (using Microsoft's current recommended setup)
|
|
|
|
|
RUN wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg && \
|
|
|
|
|
install -D -o root -g root -m 644 /tmp/microsoft.gpg /usr/share/keyrings/microsoft.gpg && \
|
|
|
|
|
rm -f /tmp/microsoft.gpg && \
|
|
|
|
|
printf 'Types: deb\nURIs: https://packages.microsoft.com/repos/code\nSuites: stable\nComponents: main\nArchitectures: amd64\nSigned-By: /usr/share/keyrings/microsoft.gpg\n' \
|
|
|
|
|
> /etc/apt/sources.list.d/vscode.sources && \
|
|
|
|
|
apt-get update && \
|
|
|
|
|
apt-get install -y code && \
|
|
|
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
|