init runner v2
This commit is contained in:
78
docker/Dockerfile
Normal file
78
docker/Dockerfile
Normal file
@@ -0,0 +1,78 @@
|
||||
FROM ubuntu:24.04
|
||||
|
||||
LABEL maintainer="homelab"
|
||||
LABEL description="Ansible Act Runner - Custom Image"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV NODE_VERSION=20
|
||||
ENV ANSIBLE_FORCE_COLOR=1
|
||||
ENV PIP_NO_CACHE_DIR=1
|
||||
|
||||
ARG ACT_RUNNER_VERSION=0.2.11
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
curl \
|
||||
wget \
|
||||
git \
|
||||
ca-certificates \
|
||||
gnupg \
|
||||
unzip \
|
||||
jq \
|
||||
rsync \
|
||||
openssh-client \
|
||||
sshpass \
|
||||
python3 \
|
||||
python3-pip \
|
||||
python3-venv \
|
||||
python3-dev \
|
||||
smbclient \
|
||||
krb5-user \
|
||||
libkrb5-dev \
|
||||
python3-kerberos \
|
||||
dnsutils \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
libffi-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Node.js 20 LTS
|
||||
RUN curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - \
|
||||
&& apt-get install -y --no-install-recommends nodejs \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# act_runner binary
|
||||
RUN curl -fsSL \
|
||||
https://gitea.com/gitea/act_runner/releases/download/v${ACT_RUNNER_VERSION}/act_runner-${ACT_RUNNER_VERSION}-linux-amd64 \
|
||||
-o /usr/local/bin/act_runner \
|
||||
&& chmod +x /usr/local/bin/act_runner
|
||||
|
||||
# Ansible + pip packages
|
||||
RUN python3 -m pip install --break-system-packages \
|
||||
ansible-core \
|
||||
ansible \
|
||||
jmespath \
|
||||
netaddr \
|
||||
passlib \
|
||||
cryptography \
|
||||
pywinrm \
|
||||
requests \
|
||||
boto3
|
||||
|
||||
# Ansible Collections
|
||||
RUN ansible-galaxy collection install \
|
||||
community.general \
|
||||
community.crypto \
|
||||
ansible.posix \
|
||||
kubernetes.core \
|
||||
community.windows \
|
||||
microsoft.ad
|
||||
|
||||
RUN useradd -m -s /bin/bash runner
|
||||
|
||||
WORKDIR /data
|
||||
|
||||
# Smoke tests
|
||||
RUN node --version \
|
||||
&& python3 --version \
|
||||
&& ansible --version \
|
||||
&& act_runner --version
|
||||
Reference in New Issue
Block a user