• Joined on 2026-07-31

devbox-vnc (latest)

Published 2026-08-01 20:45:29 +00:00 by chris

Installation

docker pull forgejo.lenny.satsri.co.za/chris/devbox-vnc:latest
sha256:e9b077fdf9dfa4bfa7c132541c82d13ad381c4965a5b52fe15d04a0577e52549

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.version=24.04
ADD file:46ac5b8ee4c64ad9ebe840abd5619f571a617ac19483764d47d0eeba7907934f in /
CMD ["/bin/bash"]
SHELL [/bin/bash -c]
ENV DEBIAN_FRONTEND=noninteractive
RUN /bin/bash -c apt-get update && apt-get upgrade --yes --no-install-recommends --no-install-suggests && apt-get install --yes --no-install-recommends --no-install-suggests ca-certificates && rm -rf /var/lib/apt/lists/* # buildkit
COPY docker-archive-keyring.gpg /usr/share/keyrings/docker-archive-keyring.gpg # buildkit
COPY docker.list /etc/apt/sources.list.d/docker.list # buildkit
RUN /bin/bash -c apt-get update && apt-get install --yes --no-install-recommends --no-install-suggests bash build-essential containerd.io curl docker-ce docker-ce-cli docker-buildx-plugin docker-compose-plugin htop jq locales man pipx python3 python3-pip software-properties-common sudo systemd systemd-sysv unzip vim wget rsync iproute2 && add-apt-repository ppa:git-core/ppa && apt-get install --yes git && rm -rf /var/lib/apt/lists/* # buildkit
RUN /bin/bash -c systemctl enable docker # buildkit
RUN /bin/bash -c ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose # buildkit
RUN /bin/bash -c locale-gen en_US.UTF-8 # buildkit
ENV LANG=en_US.UTF-8
ENV LANGUAGE=en_US.UTF-8
ENV LC_ALL=en_US.UTF-8
RUN /bin/bash -c userdel -r ubuntu && useradd coder --create-home --shell=/bin/bash --groups=docker --uid=1000 --user-group && echo "coder ALL=(ALL) NOPASSWD:ALL" >>/etc/sudoers.d/nopasswd # buildkit
USER coder
RUN /bin/bash -c pipx ensurepath # adds user's bin directory to PATH # buildkit
USER root
RUN /bin/bash -c DEBIAN_FRONTEND=noninteractive apt-get update -y # buildkit
RUN /bin/bash -c DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y --no-install-recommends; # buildkit
RUN /bin/bash -c DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends ncdu mtr-tiny; # buildkit
USER coder
USER root
RUN /bin/bash -c apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends socat && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
ENV NVM_DIR=/usr/local/nvm
ENV PATH=/usr/local/nvm/versions/node/active/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
RUN /bin/bash -c mkdir -p "$NVM_DIR" && chown -R coder:coder "$NVM_DIR" # buildkit
USER coder
RUN /bin/bash -c curl -o- "https://raw.githubusercontent.com/nvm-sh/nvm/refs/heads/master/install.sh" | bash # buildkit
RUN /bin/bash -c test -s "$NVM_DIR/nvm.sh" && echo "nvm.sh found at $NVM_DIR" || (echo "nvm install failed" && exit 1) # buildkit
RUN /bin/bash -c bash -c "source $NVM_DIR/nvm.sh && nvm install 20 && nvm alias default 20 && nvm use default && npm install -g @kilocode/cli && npm install -g @openai/codex && ln -sfn \$NVM_DIR/versions/node/\$(nvm version default) \$NVM_DIR/versions/node/active" # buildkit
RUN /bin/bash -c echo "[ Installing Claude Code (native installer) ]" && curl -fsSL https://claude.ai/install.sh | bash && "$HOME/.local/bin/claude" --version # buildkit
RUN /bin/bash -c echo "[ Installing uv (for MiniMax's official Python MCP servers) ]" && curl -LsSf https://astral.sh/uv/install.sh | sh && "$HOME/.local/bin/uv" --version # buildkit
RUN /bin/bash -c CLAUDE="$HOME/.local/bin/claude" && echo "[ Installing Claude Code plugins: frontend-design, superpowers, code-review, typescript-lsp, impeccable, context7, playwright, ralph-loop, playground, feature-dev, serena, figma, code-simplifier, github, claude-security, security-guidance ]" && ( "$CLAUDE" plugin marketplace update claude-plugins-official || "$CLAUDE" plugin marketplace add anthropics/claude-plugins-official ) && "$CLAUDE" plugin install frontend-design@claude-plugins-official && "$CLAUDE" plugin install superpowers@claude-plugins-official && "$CLAUDE" plugin install code-review@claude-plugins-official && "$CLAUDE" plugin install typescript-lsp@claude-plugins-official && "$CLAUDE" plugin install playwright@claude-plugins-official && "$CLAUDE" plugin install ralph-loop@claude-plugins-official && "$CLAUDE" plugin install playground@claude-plugins-official && "$CLAUDE" plugin install feature-dev@claude-plugins-official && "$CLAUDE" plugin install serena@claude-plugins-official && "$CLAUDE" plugin install figma@claude-plugins-official && "$CLAUDE" plugin install code-simplifier@claude-plugins-official && "$CLAUDE" plugin install github@claude-plugins-official && "$CLAUDE" plugin install claude-security@claude-plugins-official && "$CLAUDE" plugin install security-guidance@claude-plugins-official && "$CLAUDE" plugin marketplace add pbakaus/impeccable && "$CLAUDE" plugin install impeccable@impeccable && "$CLAUDE" plugin marketplace add upstash/context7 && "$CLAUDE" plugin install context7@context7-marketplace # buildkit
RUN /bin/bash -c echo "[ Installing Codex CLI plugins: frontend-design, superpowers, code-review, typescript-lsp ]" && ( codex plugin marketplace upgrade claude-plugins-official || codex plugin marketplace add anthropics/claude-plugins-official ) && codex plugin add frontend-design@claude-plugins-official && codex plugin add superpowers@claude-plugins-official && codex plugin add code-review@claude-plugins-official && codex plugin add typescript-lsp@claude-plugins-official # buildkit
RUN /bin/bash -c mkdir -p "$HOME/.claude/skills" && curl -sL "https://github.com/anthropics/skills/archive/refs/heads/main.tar.gz" -o /tmp/anthropic-skills.tar.gz && tar -xzf /tmp/anthropic-skills.tar.gz -C "$HOME/.claude/skills" --strip-components=2 skills-main/skills/mcp-builder skills-main/skills/web-artifacts-builder && rm -f /tmp/anthropic-skills.tar.gz # buildkit
RUN /bin/bash -c bash -c "source $NVM_DIR/nvm.sh && npx --yes impeccable@latest install --providers=codex --scope=global --yes --no-hooks" # buildkit
USER root
RUN /bin/bash -c cp "/home/coder/.local/bin/claude" /usr/local/bin/claude && chmod +x /usr/local/bin/claude && /usr/local/bin/claude --version # buildkit
RUN /bin/bash -c cp "/home/coder/.local/bin/uv" /usr/local/bin/uv && cp "/home/coder/.local/bin/uvx" /usr/local/bin/uvx && chmod +x /usr/local/bin/uv /usr/local/bin/uvx && /usr/local/bin/uv --version # buildkit
RUN /bin/bash -c bash -c "source $NVM_DIR/nvm.sh && npm install -g bash-language-server typescript-language-server typescript" # buildkit
ENV PLAYWRIGHT_BROWSERS_PATH=/opt/ms-playwright
RUN /bin/bash -c bash -c "source $NVM_DIR/nvm.sh && npm install -g @playwright/mcp && PW_CORE_CLI=\$(find \$NVM_DIR/versions/node/active/lib/node_modules/@playwright/mcp -path '*playwright-core/cli.js' | head -1) && node \"\$PW_CORE_CLI\" install-deps chromium && node \"\$PW_CORE_CLI\" install chromium" && chmod -R a+rX /opt/ms-playwright # buildkit
ENV PUPPETEER_CACHE_DIR=/opt/puppeteer-cache
RUN /bin/bash -c bash -c "source $NVM_DIR/nvm.sh && npm install -g chrome-devtools-mcp && npx --yes puppeteer browsers install chrome --path /opt/puppeteer-cache" && chmod -R a+rX /opt/puppeteer-cache # buildkit
RUN /bin/bash -c bash -c "source $NVM_DIR/nvm.sh && npm install -g mcp-telegram" # buildkit
ENV UV_TOOL_DIR=/opt/uv-tools UV_TOOL_BIN_DIR=/opt/uv-tools/bin
ENV PATH=/opt/uv-tools/bin:/usr/local/nvm/versions/node/active/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
RUN /bin/bash -c uv tool install minimax-mcp --with "mcp<2" && uv tool install minimax-coding-plan-mcp --with "mcp<2" && chmod -R a+rX /opt/uv-tools # buildkit
ENV DOKKU_HOST=dokku
COPY ./dokku-cli.sh /usr/local/bin/dokku # buildkit
RUN /bin/bash -c chmod +x /usr/local/bin/dokku # buildkit
COPY ./kilo/acp-bridge-listen.sh /usr/local/bin/acp-bridge-listen.sh # buildkit
COPY ./kilo/acp-bridge-auth.py /usr/local/bin/acp-bridge-auth.py # buildkit
COPY ./kilo/peer-mcp-bridge.py /usr/local/bin/peer-mcp-bridge.py # buildkit
RUN /bin/bash -c chmod +x /usr/local/bin/acp-bridge-listen.sh /usr/local/bin/acp-bridge-auth.py /usr/local/bin/peer-mcp-bridge.py # buildkit
COPY ./claude/claude-peer-listen.sh /usr/local/bin/claude-peer-listen.sh # buildkit
COPY ./claude/claude-peer-runner.py /usr/local/bin/claude-peer-runner.py # buildkit
COPY ./claude/peer-mcp-bridge-claude.py /usr/local/bin/peer-mcp-bridge-claude.py # buildkit
RUN /bin/bash -c chmod +x /usr/local/bin/claude-peer-listen.sh /usr/local/bin/claude-peer-runner.py /usr/local/bin/peer-mcp-bridge-claude.py # buildkit
COPY ./codex/codex-peer-listen.sh /usr/local/bin/codex-peer-listen.sh # buildkit
COPY ./codex/peer-mcp-bridge-codex.py /usr/local/bin/peer-mcp-bridge-codex.py # buildkit
RUN /bin/bash -c chmod +x /usr/local/bin/codex-peer-listen.sh /usr/local/bin/peer-mcp-bridge-codex.py # buildkit
USER coder
USER root
RUN /bin/bash -c DEBIAN_FRONTEND=noninteractive apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends xfce4 xfce4-terminal dbus-x11 tigervnc-standalone-server tigervnc-common novnc websockify fonts-dejavu-core x11vnc && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit
COPY ./vnc-startup.sh /usr/local/bin/vnc-startup.sh # buildkit
RUN /bin/bash -c chmod +x /usr/local/bin/vnc-startup.sh # buildkit
USER coder

Labels

Key Value
com.docker.compose.project coder
com.docker.compose.service devbox-vnc
com.docker.compose.version 5.3.0
org.opencontainers.image.version 24.04
Details
Container
2026-08-01 20:45:29 +00:00
0
OCI / Docker
linux/amd64
2.4 GiB
Versions (1) View all
latest 2026-08-01