fix: use forgejo/runner as base image, add Node.js on top
Build and push runner images / build-runners (push) Failing after 17s
Build and push runner images / build-runners (push) Failing after 17s
- All runners now based on code.forgejo.org/forgejo/runner:6 (has runner binary) - Dockerfile adds Node.js + specialized tools (Go, Rust, docker) - CI workflow will build custom images and push to registry - Image Updater will auto-detect and update values.yaml - ArgoCD will sync new custom images when available
This commit is contained in:
@@ -1,15 +1,10 @@
|
|||||||
FROM docker:27-cli
|
FROM code.forgejo.org/forgejo/runner:6
|
||||||
|
|
||||||
# Install Node.js + build essentials (needed for GitHub Actions checkout@v4, etc.)
|
# Install Node.js (needed for GitHub Actions checkout@v4, etc.)
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
nodejs \
|
nodejs \
|
||||||
npm \
|
npm && \
|
||||||
git \
|
|
||||||
curl \
|
|
||||||
ca-certificates \
|
|
||||||
build-essential \
|
|
||||||
python3 && \
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Verify installations
|
# Verify installations
|
||||||
|
|||||||
@@ -1,13 +1,4 @@
|
|||||||
FROM node:22-bookworm
|
FROM code.forgejo.org/forgejo/runner:6
|
||||||
|
|
||||||
# Install Docker client (dind sidecar provides the daemon)
|
# Node.js is already in forgejo/runner, just verify
|
||||||
RUN apt-get update && \
|
RUN node --version && docker --version && git --version
|
||||||
apt-get install -y --no-install-recommends \
|
|
||||||
docker.io \
|
|
||||||
git \
|
|
||||||
curl \
|
|
||||||
ca-certificates && \
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Verify installations
|
|
||||||
RUN docker --version && node --version && git --version
|
|
||||||
|
|||||||
@@ -1,20 +1,16 @@
|
|||||||
FROM docker:27-cli
|
FROM code.forgejo.org/forgejo/runner:6
|
||||||
|
|
||||||
# Install Node.js + build essentials (needed for GitHub Actions checkout@v4, etc.)
|
# Install Node.js + Rust (needed for GitHub Actions checkout@v4, etc.)
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
nodejs \
|
nodejs \
|
||||||
npm \
|
npm && \
|
||||||
git \
|
|
||||||
curl \
|
|
||||||
ca-certificates \
|
|
||||||
build-essential \
|
|
||||||
python3 && \
|
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Install Rust
|
# Install Rust
|
||||||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && \
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
||||||
. $HOME/.cargo/env
|
|
||||||
|
ENV PATH="/root/.cargo/bin:${PATH}"
|
||||||
|
|
||||||
# Verify installations
|
# Verify installations
|
||||||
RUN docker --version && node --version && git --version && rustc --version
|
RUN docker --version && node --version && git --version && rustc --version
|
||||||
|
|||||||
@@ -4,13 +4,13 @@
|
|||||||
#
|
#
|
||||||
# node:22-bookworm ships Node natively. Docker client installed via workflow step if needed.
|
# node:22-bookworm ships Node natively. Docker client installed via workflow step if needed.
|
||||||
# (homelab has no CI; custom runner images built manually if desired)
|
# (homelab has no CI; custom runner images built manually if desired)
|
||||||
# Bootstrap with base image, custom image via CI+Image Updater
|
# Bootstrap with runner image (already has Node.js), CI builds custom
|
||||||
runner:
|
runner:
|
||||||
image:
|
image:
|
||||||
repository: node
|
repository: code.forgejo.org/forgejo/runner
|
||||||
tag: "22-bookworm"
|
tag: "6"
|
||||||
name: node-runner
|
name: node-runner
|
||||||
labels: "node:docker://node:22-bookworm"
|
labels: "node:docker://code.forgejo.org/forgejo/runner:6"
|
||||||
|
|
||||||
# GC CronJob renders only from the default (golang) values to avoid duplicates
|
# GC CronJob renders only from the default (golang) values to avoid duplicates
|
||||||
gc:
|
gc:
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
# runner instance. Only runner.name and runner.labels differ -- everything
|
# runner instance. Only runner.name and runner.labels differ -- everything
|
||||||
# else (image, dind, persistence, tolerations, nodeSelector) is shared.
|
# else (image, dind, persistence, tolerations, nodeSelector) is shared.
|
||||||
#
|
#
|
||||||
# Bootstrap with base image, custom image via CI+Image Updater
|
# Bootstrap with runner image, CI builds custom with Node.js+Rust
|
||||||
runner:
|
runner:
|
||||||
image:
|
image:
|
||||||
repository: docker
|
repository: code.forgejo.org/forgejo/runner
|
||||||
tag: "27-cli"
|
tag: "6"
|
||||||
name: rust-runner
|
name: rust-runner
|
||||||
labels: "rust:docker://docker:27-cli"
|
labels: "rust:docker://code.forgejo.org/forgejo/runner:6"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
runner:
|
runner:
|
||||||
image:
|
image:
|
||||||
repository: docker
|
repository: code.forgejo.org/forgejo/runner
|
||||||
tag: "27-cli" # Bootstrap with base image, custom image via CI+Image Updater
|
tag: "6" # Bootstrap with runner image, CI builds custom with Node.js
|
||||||
name: golang-runner
|
name: golang-runner
|
||||||
labels: "golang:docker://docker:27-cli"
|
labels: "golang:docker://code.forgejo.org/forgejo/runner:6"
|
||||||
forgejoUrl: http://forgejo-gitea-http.cicd.svc.cluster.local:3000
|
forgejoUrl: http://forgejo-gitea-http.cicd.svc.cluster.local:3000
|
||||||
tokenSecret: runner-token
|
tokenSecret: runner-token
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
Reference in New Issue
Block a user