apiVersion: apps/v1 kind: Deployment metadata: name: forgejo-runner namespace: forgejo labels: app: forgejo-runner spec: replicas: 1 selector: matchLabels: app: forgejo-runner template: metadata: labels: app: forgejo-runner spec: # Schedule on nxtgauge-2 where docker is available nodeSelector: kubernetes.io/hostname: nxtgauge-2 containers: - name: runner image: code.forgejo.org/forgejo/runner:6 env: - name: DOCKER_HOST value: unix:///var/run/docker.sock - name: FORGEJO_INSTANCE_URL value: http://forgejo.forgejo.svc.cluster.local:3000 - name: FORGEJO_RUNNER_REGISTRATION_TOKEN valueFrom: secretKeyRef: name: forgejo-runner-secret key: token - name: FORGEJO_RUNNER_NAME value: nxtgauge-runner-1 - name: FORGEJO_RUNNER_LABELS value: "ubuntu-latest:docker://node:20-bookworm,self-hosted:docker://node:20-bookworm,ubuntu-22.04:docker://node:20-bookworm,ubuntu-24.04:docker://node:20-bookworm,debian-12:docker://node:20-bookworm" volumeMounts: - name: docker-sock mountPath: /var/run/docker.sock - name: runner-config mountPath: /data - name: runner-cache mountPath: /cache resources: requests: cpu: 200m memory: 512Mi limits: cpu: 4 memory: 8Gi volumes: - name: docker-sock hostPath: path: /var/run/docker.sock type: Socket - name: runner-config hostPath: path: /var/lib/forgejo-runner type: DirectoryOrCreate - name: runner-cache hostPath: path: /var/cache/forgejo-runner type: DirectoryOrCreate --- apiVersion: v1 kind: Secret metadata: name: forgejo-runner-secret namespace: forgejo type: Opaque stringData: token: "od2pOx...k7MT"