# act-runner-example ## Gitea Runner 缓存服务器 [^1] ```bash docker rm -f gitea-runner-cache-server docker run -d --name gitea-runner-cache-server \ --label com.centurylinklabs.watchtower.enable=true \ --restart unless-stopped \ -e TZ=Asia/Shanghai \ -v gitea-runner-cache-server:/runner-cache \ -p 9999:9999 \ --entrypoint act_runner \ --pull always \ gitea/act_runner:nightly \ cache-server \ --dir /runner-cache \ --port 9999 \ --host 'gitea-runner-cache-server.oo1.dev' docker logs gitea-runner-cache-server ``` ``` docker exec -it gitea-runner-cache-server sh -c "rm -rf /runner-cache/cache/*" ``` ## Gitea Runner - https://github.com/vegardit/docker-gitea-act-runner#additional-environment-variables ```bash GITEA_INSTANCE_URL=https://git.1-h.cc GITEA_RUNNER_REGISTRATION_TOKEN=❗️❗️❗️ CONTAINER_NAME=gitea_runner_1h_cc MAX_PARALLEL_JOBS=1 VOLUME_NAME="$CONTAINER_NAME"_data docker rm -f $CONTAINER_NAME docker volume rm $VOLUME_NAME arch=$(uname -m); if [ "$arch" == "x86_64" ]; then arch="amd64"; elif [ "$arch" == "aarch64" ]; then arch="arm64"; else echo "unknown arch: $arch"; exit 1; fi labels="ubuntu-latest:docker://gitea/runner-images:ubuntu-latest" labels="$labels,ubuntu-$arch:docker://gitea/runner-images:ubuntu-latest" country=$(curl -fsSL ipinfo.io/country) memTotal=$(grep MemTotal /proc/meminfo | awk '{printf "%.2f", $2 / 1024 / 1024}') docker run --detach --restart=unless-stopped --pull=always --name $CONTAINER_NAME \ -e GITEA_RUNNER_MAX_PARALLEL_JOBS=$MAX_PARALLEL_JOBS \ -e GITEA_RUNNER_NAME="$country-$(curl -4fsSL ip.sb)-$arch-$(nproc)C${memTotal}G" \ -v $VOLUME_NAME:/data \ -v /var/run/docker.sock:/var/run/docker.sock:ro \ -e GITEA_INSTANCE_URL=$GITEA_INSTANCE_URL \ -e GITEA_RUNNER_REGISTRATION_TOKEN=$GITEA_RUNNER_REGISTRATION_TOKEN \ -v /etc/localtime:/etc/localtime:ro \ -e GITEA_RUNNER_LABELS="$labels" \ -e ACT_CACHE_SERVER_EXTERNAL_URL=http://gitea-runner-cache-server.oo1.dev:9999/ \ -e GITEA_RUNNER_JOB_CONTAINER_FORCE_PULL=true \ --label "com.centurylinklabs.watchtower.enable=true" \ yanhao98/runner-images:gitea-act-runner docker logs -f $CONTAINER_NAME ``` [^1]: https://github.com/nektos/act/tree/master/pkg/artifactcache