diff --git a/images/aws/base/Dockerfile.noble b/images/aws/base/Dockerfile.noble deleted file mode 100644 index f34fcc3..0000000 --- a/images/aws/base/Dockerfile.noble +++ /dev/null @@ -1,133 +0,0 @@ -FROM --platform=linux/amd64 ubuntu:noble AS ubuntu_noble_amd64 - -SHELL ["/bin/bash", "-c"] -ENV DEBIAN_FRONTEND=noninteractive - -# Install the Docker apt repository -RUN apt update && \ - apt upgrade -y --no-install-recommends --no-install-suggests && \ - apt install -y --no-install-recommends --no-install-suggests \ - ca-certificates gnupg2 curl wget \ - software-properties-common build-essential && \ - rm -rf /var/lib/apt/lists/* - -# Add GPG keys -RUN curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \ - curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg - -# Add Apt repos -RUN echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_24.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list && \ - echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | tee /etc/apt/sources.list.d/github-cli.list && \ - add-apt-repository "ppa:git-core/ppa" - -# Update Apt -RUN apt update -y - -# Install baseline packages -RUN apt install -y --no-install-recommends --no-install-suggests \ - git gh vim tmux \ - openssh-client iproute2 iptables tcpdump \ - lsof jq less \ - locales \ - sudo man \ - unzip \ - nodejs \ - python3.12 python3.12-venv - -# Playwright Testing Dependencies -RUN apt install -y --no-install-recommends --no-install-suggests \ - libnss3 libnspr4 \ - libatk1.0-0 libatk-bridge2.0-0 libatspi2.0-0 \ - libx11-6 libxcomposite1 libxdamage1 libxext6 libxfixes3 libxrandr2 libgbm1 libxkbcommon0 libasound2t64 - -# Installl Golang -RUN curl -fsSL https://go.dev/dl/go1.25.9.linux-amd64.tar.gz | tar -C /usr/local -zxvf - > /dev/null && \ - chmod +x /usr/local/go/bin/go - -# Clean List. -RUN rm -rf /var/lib/apt/lists/* - -# Install Coder's AgentAPI -RUN curl -fsSL https://github.com/coder/agentapi/releases/latest/download/agentapi-linux-amd64 | tee /usr/local/bin/agentapi >/dev/null && \ - chmod +x /usr/local/bin/agentapi - -# Install Coder Boundary -# RUN curl -fsSL https://raw.githubusercontent.com/coder/boundary/main/install.sh | bash - -# Generate the desired locale (en_US.UTF-8) -RUN locale-gen en_US.UTF-8 - -# Make typing unicode characters in the terminal work. -ENV LANG=en_US.UTF-8 -ENV LANGUAGE=en_US.UTF-8 -ENV LC_ALL=en_US.UTF-8 - -# Remove the `ubuntu` user and add a user `coder` so that you're not developing as the `root` user -RUN userdel -r ubuntu && \ - useradd coder \ - --create-home \ - --shell=/bin/bash \ - --uid=1000 \ - --user-group && \ - echo "coder ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/nopasswd - -USER coder - -ENV HOME=/home/coder -ENV PATH=$PATH:$HOME/bin -ENV PATH=$PATH:$HOME/.local/bin -ENV PATH=$PATH:/usr/local/go/bin -WORKDIR $HOME - -ARG PLAYWRIGHT_VER=latest -ARG DESKTOP_COMMANDER_VER=latest -ARG HTTP_SERVER_VER=latest -ARG CLAUDE_CODE_VER=latest -ARG GOOSE_VERSION="" -ARG CURSOR_VERSION=latest -ARG MUX_VERSION=latest - -# RUN npm config set prefix=$HOME -RUN curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash - -RUN sudo npm install -g \ - @playwright/mcp@$PLAYWRIGHT_VER \ - @wonderwhy-er/desktop-commander@$DESKTOP_COMMANDER_VER \ - http-server@$HTTP_SERVER_VER && \ - npx playwright install chrome - -# Install Claude Code -RUN curl -fsSL https://claude.ai/install.sh | bash -s -- $CLAUDE_CODE_VER 2>&1 && \ - sudo mv $(readlink -f $(which claude)) /usr/local/bin/claude && \ - rm -rf $HOME/.local/bin/claude $HOME/.local/share/claude $HOME/.claude $HOME/.claude.json - -# Install Cursor -RUN curl https://cursor.com/install -fsS | bash 2>&1 && \ - sudo mv /home/coder/.local/share/cursor-agent && \ - sudo mv $(readlink -f $(which cursor-agent)) /usr/bin/cursor-agent && \ - sudo ln -sf "/usr/bin/cursor-agent" "/usr/bin/agent" && \ - rm -rf $HOME/.local/bin/cursor-agent || true - -# Install Goose -RUN curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | GOOSE_VERSION=$GOOSE_VERSION CONFIGURE=false bash && \ - sudo mv $(readlink -f $(which goose)) /usr/local/bin/goose && \ - rm -rf $HOME/.local/bin/goose || true - -# Install Coder Mux Web Server -RUN sudo npm install -g --no-audit --no-fund --omit=dev --ignore-scripts "mux@${MUX_VERSION}" - -# Install VS Code Web -RUN sudo mkdir -p "/usr/local/lib/vscode-web" && \ - curl -fsSL https://vscode.download.prss.microsoft.com/dbazure/download/stable/$(curl -fsSL https://update.code.visualstudio.com/api/commits/stable/server-linux-x64-web | cut -d '"' -f 2)/vscode-server-linux-x64-web.tar.gz | \ - sudo tar -xz -C "/usr/local/lib/vscode-web" --strip-components 1 && \ - sudo ln -sf "/usr/local/lib/vscode-web/bin/code-server" "/usr/local/bin/code-server" && \ - rm -rf $HOME/.vscode-server - -# Install Portable Desktop -RUN sudo mkdir -p /usr/local/lib/portabledesktop/bin && \ - sudo curl -fsSL https://github.com/coder/portabledesktop/releases/latest/download/portabledesktop-linux-x64 -o /usr/local/lib/portabledesktop/bin/portabledesktop && \ - sudo chmod +x "/usr/local/lib/portabledesktop/bin/portabledesktop" && \ - sudo ln -sf "/usr/local/lib/portabledesktop/bin/portabledesktop" "/usr/local/bin/portabledesktop" - -# Clean tmp files -RUN sudo rm -rf /tmp/* $HOME/.cache $HOME/.npm \ No newline at end of file diff --git a/images/aws/base/README.md b/images/aws/base/README.md deleted file mode 100644 index 447042a..0000000 --- a/images/aws/base/README.md +++ /dev/null @@ -1,24 +0,0 @@ -To login - -``` -aws ecr get-login-password --region --profile demo-coder | docker login --username AWS --password-stdin .dkr.ecr..amazonaws.com -``` - -Commands to run - -Alpine -``` -docker build --platform=linux/amd64 -f Dockerfile.alpine -t .dkr.ecr..amazonaws.com/base-ws:alpine-3.22 --no-cache . -docker push .dkr.ecr..amazonaws.com/base-ws:alpine-3.22 -``` - -Noble -``` -docker build --platform=linux/amd64 -f Dockerfile.noble -t .dkr.ecr..amazonaws.com/base-ws:ubuntu-noble --no-cache . -docker push .dkr.ecr..amazonaws.com/base-ws:ubuntu-noble -``` - -docker build -t public.ecr.aws/f7a1d7a4/coder-aienv:test -f Dockerfile.noble --platform=linux/amd64 --no-cache . -docker build -t public.ecr.aws/f7a1d7a4/coder-aienv:1.1.6 -f Dockerfile.noble --platform=linux/amd64 --no-cache . - -aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws/f7a1d7a4 \ No newline at end of file diff --git a/images/aws/dev/Dockerfile.noble b/images/aws/coder-aidev/Dockerfile.noble similarity index 100% rename from images/aws/dev/Dockerfile.noble rename to images/aws/coder-aidev/Dockerfile.noble diff --git a/images/aws/dev/README.md b/images/aws/coder-aidev/README.md similarity index 100% rename from images/aws/dev/README.md rename to images/aws/coder-aidev/README.md