docker-compose.yaml:
services:
circleci-runner:
image: fuming/circleci-runner-agent:machine-3
container_name: circle_ci_runner
environment:
CIRCLECI_RUNNER_NAME: "CircleCI-Runner-1"
CIRCLECI_RUNNER_API_AUTH_TOKEN: ""
CIRCLECI_RUNNER_CLEANUP_WORK_DIR: false
restart: unless-stopped
volumes:
- ./.ssh/id_rsa:/root/.ssh/id_rsa:ro
- ./workdir:/var/opt/circleci/workdir
- /root/docker/nginx/volumes/html:/var/opt/circleci/artifacts
Dockerfile:
FROM circleci/runner-agent:machine-3
USER root
COPY Dockerfile Dockerfile
RUN apt-get update && \
apt-get install --no-install-recommends -y \
git \
openssh-client \
python3 \
gcc \
g++ \
make \
ca-certificates \
ninja-build \
pkgconf \
gnupg \
zip
# Install CMake
RUN curl -fsSL https://apt.kitware.com/keys/kitware-archive-latest.asc | \
sudo gpg --dearmor -o /usr/share/keyrings/kitware-archive-keyring.gpg
RUN echo "deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main" | \
sudo tee /etc/apt/sources.list.d/kitware.list
RUN apt-get update && \
apt-get install --no-install-recommends -y cmake
# Install Go v1.25.3
RUN GO_VERSION=1.25.3 && \
wget https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz && \
rm -rf /usr/local/go && \
tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gz && \
rm go${GO_VERSION}.linux-amd64.tar.gz && \
echo "export PATH=\$PATH:/usr/local/go/bin" | sudo tee -a $HOME/.profile
# Install nvm and nodejs-v24
RUN NVM_DIR="$HOME/.nvm" && \
NVM_VERSION=0.40.3 && \
NODE_VERSION=24 && \
mkdir -p $NVM_DIR && \
export PROFILE="$HOME/.profile" && \
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v${NVM_VERSION}/install.sh | bash && \
export NVM_DIR="$HOME/.nvm" && \
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && \
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" && \
nvm install $NODE_VERSION
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
Content type
Image
Digest
sha256:afad5ae2f…
Size
396.2 MB
Last updated
11 months ago
docker pull fuming/circleci-runner-agent:machine-3