Overview of GitHub-hosted runners
Runners are the machines that execute jobs in a GitHub Actions workflow. For example, a runner can clone your repository locally, install testing software, and then run commands that evaluate your code.
GitHub provides runners that you can use to run your jobs, or you can host your own runners. Each GitHub-hosted runner is a new virtual machine (VM) hosted by GitHub with the runner application and other tools preinstalled, and is available with Ubuntu Linux, Windows, or macOS operating systems. When you use a GitHub-hosted runner, machine maintenance and upgrades are taken care of for you.
You can choose one of the standard GitHub-hosted runner options or, if you are on the GitHub Team or GitHub Enterprise Cloud plan, you can provision a runner with more cores, or a runner that's powered by a GPU processor. These machines are referred to as "executor avançado." For more information, see Sobre executores avançados.
Using GitHub-hosted runners requires network access with at least 70 kilobits per second upload and download speeds.
Observação
Os minutos de direito para executores hospedados no GitHub não estão disponíveis para contas de usuário gerenciadas. Os Enterprise Managed Users que desejarem contribuir para repositórios em organizações das quais não são membros podem criar um fork no repositório da organização e depois abrir uma solicitação de pull direcionada ao repositório da organização. Isso executa os fluxos de trabalho nos executores hospedados no GitHub da organização. For more information, see Sobre os Enterprise Managed Users.
Runner Images
GitHub maintains our own set of VM images for our standard hosted runners. This includes the images for macOS, x64 linux and Windows images. The list of images and their included tools are managed in the actions/runner-images
repository. Our arm64 images are partner images, and those are managed in the actions/partner-runner-images
repository.
Preinstalled software for GitHub-owned images
The software tools included in our GitHub-owned images are updated weekly. The update process takes several days, and the list of preinstalled software on the main
branch is updated after the whole deployment ends.
Workflow logs include a link to the preinstalled tools on the exact runner. To find this information in the workflow log, expand the Set up job
section. Under that section, expand the Runner Image
section. The link following Included Software
will describe the preinstalled tools on the runner that ran the workflow.
For more information, see Visualizar o histórico de execução do fluxo de trabalho.
GitHub-hosted runners include the operating system's default built-in tools, in addition to the packages listed in the above references. For example, Ubuntu and macOS runners include grep
, find
, and which
, among other default tools.
You can also view a software bill of materials (SBOM) for each build of the Windows and Ubuntu runner images. For more information, see Fortalecimento de segurança para o GitHub Actions.
We recommend using actions to interact with the software installed on runners. This approach has several benefits:
- Usually, actions provide more flexible functionality like version selection, ability to pass arguments, and parameters
- It ensures the tool versions used in your workflow will remain the same regardless of software updates
If there is a tool that you'd like to request, please open an issue at actions/runner-images. This repository also contains announcements about all major software updates on runners.
Observação
You can also install additional software on GitHub-hosted runners. See Personalizando executores hospedados no GitHub.
Cloud hosts used by GitHub-hosted runners
GitHub hosts Linux and Windows runners on virtual machines in Microsoft Azure with the GitHub Actions runner application installed. The GitHub-hosted runner application is a fork of the Azure Pipelines Agent. Inbound ICMP packets are blocked for all Azure virtual machines, so ping or traceroute commands might not work. GitHub hosts macOS runners in Azure data centers.
Workflow continuity
Se os serviços de GitHub Actions estiverem temporariamente indisponíveis, a execução do fluxo de trabalho será descartada se não tiver sido enfileirada em 30 minutos após ser acionada. Por exemplo, se um fluxo de trabalho for acionado e os serviços de GitHub Actions não estiverem disponíveis por 31 minutos ou mais, a execução do fluxo de trabalho não será processada.
In addition, if the workflow run has been successfully queued, but has not been processed by a GitHub-hosted runner within 45 minutes, then the queued workflow run is discarded.
The etc/hosts
file
Os executores hospedados pelo GitHub são provisionados com um arquivo etc/hosts
que bloqueia o acesso à rede a vários pools de mineração de criptomoedas e sites mal-intencionados. Hosts como MiningMadness.com e cpu-pool.com são redirecionados para localhost para que não apresentem um risco de segurança significativo.