HTTP/2 301
access-control-allow-origin: *
content-security-policy: default-src 'none';prefetch-src 'self';connect-src 'self';font-src 'self' data:;img-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com data: placehold.it;object-src 'self';script-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com 'self' data: 'unsafe-inline';script-src-attr 'self';frame-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com https://support.github.com https://www.youtube-nocookie.com;frame-ancestors 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com;style-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com 'self' 'unsafe-inline' data:;child-src 'self';manifest-src 'self';upgrade-insecure-requests;base-uri 'self';form-action 'self'
cross-origin-opener-policy: same-origin
cross-origin-resource-policy: same-origin
origin-agent-cluster: ?1
referrer-policy: no-referrer-when-downgrade
x-content-type-options: nosniff
x-dns-prefetch-control: off
x-download-options: noopen
x-frame-options: SAMEORIGIN
x-permitted-cross-domain-policies: none
x-xss-protection: 0
cache-control: public, max-age=60
location: /en/actions/how-tos/manage-runners/self-hosted-runners
content-type: text/plain; charset=utf-8
x-github-backend: Kubernetes
x-github-request-id: 671E:2785D:142C04F:17CB28A:68ECF2F0
accept-ranges: bytes
age: 0
date: Mon, 13 Oct 2025 12:39:13 GMT
via: 1.1 varnish
x-served-by: cache-bom-vanm7210077-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1760359152.873799,VS0,VE1192
vary: Accept
strict-transport-security: max-age=31557600
content-length: 88
HTTP/2 200
access-control-allow-origin: *
content-security-policy: default-src 'none';prefetch-src 'self';connect-src 'self';font-src 'self' data:;img-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com data: placehold.it;object-src 'self';script-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com 'self' data: 'unsafe-inline';script-src-attr 'self';frame-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com https://support.github.com https://www.youtube-nocookie.com;frame-ancestors 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com;style-src 'self' github.com *.github.com *.githubusercontent.com *.githubassets.com 'self' 'unsafe-inline' data:;child-src 'self';manifest-src 'self';upgrade-insecure-requests;base-uri 'self';form-action 'self'
cross-origin-opener-policy: same-origin
cross-origin-resource-policy: same-origin
origin-agent-cluster: ?1
referrer-policy: no-referrer-when-downgrade
x-content-type-options: nosniff
x-dns-prefetch-control: off
x-download-options: noopen
x-frame-options: SAMEORIGIN
x-permitted-cross-domain-policies: none
x-xss-protection: 0
cache-control: public, max-age=60
x-powered-by: Next.js
content-type: text/html; charset=utf-8
x-github-backend: Kubernetes
x-github-request-id: 16C0:21CADA:151F97E:18BADD2:68ECF2ED
content-encoding: gzip
accept-ranges: bytes
age: 1
date: Mon, 13 Oct 2025 12:39:14 GMT
via: 1.1 varnish
x-served-by: cache-bom-vanm7210077-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1760359153.078961,VS0,VE1640
vary: Accept-Encoding
strict-transport-security: max-age=31557600
content-length: 27024
Managing self-hosted runners - GitHub DocsSkip to main contentManaging self-hosted runners
You can host your own runners to run workflows in a highly customizable environment.
You can add a self-hosted runner to a repository, an organization, or an enterprise.
Scripts can automatically execute on a self-hosted runner, directly before or after a job.
You can customize how your self-hosted runner invokes a container for a job.
You can configure the self-hosted runner application as a service to automatically start the runner application when the machine starts.
You can configure self-hosted runners to use a proxy server to communicate with GitHub.
You can use labels to organize your self-hosted runners based on their characteristics.
To use self-hosted runners in a workflow, you can use labels or groups to specify the runner for a job.
You can use policies to limit access to self-hosted runners that have been added to an organization.
You can monitor your self-hosted runners to view their activity and diagnose common issues.
You can permanently remove a self-hosted runner from a repository or organization.