{ config, lib, pkgs, ... }: let runnerVersion = "0.2.12"; in { virtualisation.oci-containers.containers = { gitea-runner = { image = "gitea/act_runner:${runnerVersion}"; # NOTE: vegardit has other runner images autoStart = true; login = { # Uses DockerHub by default # registry = ""; # DockerHub Credentials username = "christoph.urlacher@protonmail.com"; passwordFile = "${config.sops.secrets.docker-password.path}"; }; dependsOn = []; ports = []; volumes = [ "gitea-runner_data:/data" "gitea-runner_config:/config" # Managed by env variables for vegardit image "/var/run/docker.sock:/var/run/docker.sock" # Disable for dind ]; environment = { # gitlab.local.chriphost.de doesn't work, because it gets resolved to 192.168.86.25:443, which is nginx GITEA_INSTANCE_URL = "http://192.168.86.25:3000"; GITEA_RUNNER_NAME = "servenix"; # Can be generated from inside the container using act_runner generate-config > /config/config.yaml CONFIG_FILE = "/config/config.yaml"; # This token is invalid, when re-registering is needed it has to be refreshed GITEA_RUNNER_REGISTRATION_TOKEN = "Mq6wr0dPthqDij3iaryP8s5VYZA5kPfOQbHA6wm6"; }; extraOptions = [ # "--privileged" # Enable for dind "--net=behind-nginx" ]; }; }; }