No description
  • Shell 77.1%
  • Dockerfile 22.9%
Find a file
pika ebf717988c
All checks were successful
Build and Push to Forgejo Registry / checkout (push) Successful in 21s
wip
2026-01-10 14:14:17 +01:00
.forgejo/workflows batman2 2025-04-12 12:49:03 +02:00
Dockerfile wip 2026-01-10 14:14:17 +01:00
README.md some changes by claude 2026-01-10 13:52:10 +01:00
setup.sh some changes by claude 2026-01-10 13:52:10 +01:00

Forgejo Runner

Minimal Docker image (~50MB) for running forgejo-runner with Docker-in-Docker support.

Based on docker:cli (Alpine) with just the Docker CLI and forgejo-runner binary.

docker-compose.yml

services:
  dind:
    image: docker:dind
    privileged: true
    command: ["dockerd", "-H", "tcp://0.0.0.0:2375", "--tls=false"]
    restart: unless-stopped

  runner:
    build: .
    depends_on:
      - dind
    environment:
      DOCKER_HOST: "tcp://dind:2375"
    volumes:
      - ./config:/home/runner
    restart: unless-stopped

Register

docker compose run --rm runner forgejo-runner register
docker compose run --rm runner forgejo-runner generate-config > config/config.yml

Enter your Forgejo URL, runner token, and labels (e.g., self-hosted:host://-self-hosted).

Example Workflow

name: Build and Push

on:
  push:
    branches: [main]

jobs:
  build:
    runs-on: self-hosted
    steps:
      - uses: actions/checkout@v4
      - uses: docker/login-action@v3
        with:
          registry: git.k4li.de
          username: ${{ vars.USERNAME }}
          password: ${{ vars.PASSWORD }}
      - run: |
          docker build -t git.k4li.de/myimage:latest .
          docker push git.k4li.de/myimage:latest