This commit is contained in:
23
.gitea/workflows/build.yml
Normal file
23
.gitea/workflows/build.yml
Normal file
@ -0,0 +1,23 @@
|
||||
on: push
|
||||
jobs:
|
||||
build-docker:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: catthehacker/ubuntu:act-latest
|
||||
steps:
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: git.comprofix.com
|
||||
username: ${{ secrets.REGISTRY_USERNAME }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
file: ./Dockerfile
|
||||
push: true
|
||||
tags: git.comprofix.com/mmckinnon/debian-runner:latest
|
42
Dockerfile
Normal file
42
Dockerfile
Normal file
@ -0,0 +1,42 @@
|
||||
# Base image
|
||||
FROM debian:trixie-slim
|
||||
|
||||
# Set environment variables
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
LANG=C.UTF-8 \
|
||||
PATH=/usr/local/bundle/bin:$PATH
|
||||
|
||||
# Install dependencies
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
curl \
|
||||
git \
|
||||
bash \
|
||||
openssh-client \
|
||||
python3 \
|
||||
python3-pip \
|
||||
build-essential \
|
||||
zlib1g-dev \
|
||||
libffi-dev \
|
||||
libssl-dev \
|
||||
ca-certificates \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install Node.js 22
|
||||
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
||||
&& apt-get install -y nodejs \
|
||||
&& npm install -g npm
|
||||
|
||||
# Install Ansible via pip
|
||||
RUN pip3 install --no-cache-dir ansible
|
||||
|
||||
# Install Ruby and Jekyll
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
ruby-full \
|
||||
&& gem install bundler jekyll \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Create workspace
|
||||
WORKDIR /workspace
|
||||
|
||||
# Default shell
|
||||
SHELL ["/bin/bash", "-c"]
|
Reference in New Issue
Block a user