FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive # --- 1. Base dependencies --- RUN apt-get update && apt-get install -y \ curl wget git sudo build-essential gnupg lsb-release \ ca-certificates software-properties-common \ python3 python3-pip python3-venv \ nodejs npm \ && rm -rf /var/lib/apt/lists/* # --- 2. Add code-server --- RUN curl -fsSL https://code-server.dev/install.sh | sh # Create a new user for code-server RUN useradd -m coder \ && echo "coder ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers # Set working dir WORKDIR /home/coder # Add code-server config (no auth for simplicity) RUN mkdir -p /home/coder/.config/code-server COPY --chown=coder:coder config.yaml /home/coder/.config/code-server/config.yaml # Copy optional agent code COPY . /home/coder/project # Change ownership RUN chown -R coder:coder /home/coder # Switch to user USER coder # Expose the code-server port EXPOSE 7860 # Start code-server CMD ["code-server"]