Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Sobre executores auto-hospedados

Você pode hospedar seus próprios executores e personalizar o ambiente usado para executar trabalhos nos seus fluxos de trabalho do GitHub Actions.

Neste artigo

Did this doc help you?

Sobre executores auto-hospedados

Executores auto-hospedados oferecem mais controle de hardware, sistema operacional e ferramentas de software do que os executores hospedados pelo GitHub. Com executores auto-hospedados, você pode optar por criar uma configuração de hardware personalizado com mais poder de processamento ou memória para executar trabalhos maiores, software de instalação disponível na sua rede local e escolher um sistema operacional não oferecido por executores hospedados do GitHub. Os executores auto-hospedados podem ser físicos, virtuais, estar em um container, no local ou em uma nuvem.

Você pode adicionar runners auto-hospedados em vários níveis na hierarquia de gerenciamento:

  • Runners em nível de repositório são dedicados a um único repositório.
  • Executores no nível da organização podem processar trabalhos para vários repositórios em uma organização.
  • Runners de nível empresarial podem ser atribuídos a várias organizações em uma conta corporativa.

Your runner machine connects to GitHub using the GitHub Actions self-hosted runner application. O aplicativo de executor do GitHub Actions tem código aberto. Você pode contribuir e arquivar problemas no repositório runner. Quando uma nova versão é lançada, o aplicativo do executor atualiza-se automaticamente quando uma tarefa é atribuída ao executor, ou dentro de uma semana após a liberação, caso o executor não tenha recebido nenhum trabalho.

Um executor auto-hospedado é automaticamente removido de GitHub se não se conectar a GitHub Actions por mais de 30 dias.

Para mais informações sobre instalação e uso de executores auto-hospedados, consulte "Adicionar executores auto-hospedados" e "Usar executores auto-hospedados em um fluxo de trabalho."

Você pode executar fluxos de trabalho nos executores hospedados em GitHub ou em executores auto-hospedados

Os executores auto-hospedados em GitHub oferecem uma maneira mais rápida e simples de executar seus fluxos de trabalho, enquanto os executores auto-hospedados são uma maneira altamente configurável de executar fluxos de trabalho em seu próprio ambiente personalizado.

Executores hospedados no GitHub:

  • Recebe atualizações automáticas para o sistema operacional, pacotes e ferramentas pré-instalados e o aplicativo do executor auto-hospedado.
  • São gerenciados e mantidos por GitHub.
  • Fornece uma instância limpa para cada execução de trabalho.
  • Use minutos grátis no seu plano GitHub, com taxas por minuto aplicadas após exceder os minutos grátis.

Executores auto-hospedados:

  • Recebem atualizações automáticas apenas para o aplicativo do executor auto-hospedado. Você é responsável por atualizar o sistema operacional e todos os outros softwares.
  • Pode usar serviços de nuvem ou máquinas locais pelos quais você já paga.
  • É personalizável para seu hardware, sistema operacional, software e requisitos de segurança.
  • Não é necessário ter uma instância limpa para a execução de cada trabalho.
  • São grátis para usar com GitHub Actions, mas você é responsável pelo custo de manutenção das suas máquinas executoras.

Requisitos para executores auto-hospedados

Você pode usar qualquer máquina como um executor auto-hospedado, desde que ela atenda a estes requisitos:

  • Você pode instalar e executar o aplicativo do executor auto-hospedado na máquina. Para obter mais informações, consulte "Sistemas operacionais compatíveis com os executores auto-hospedados".
  • A máquina pode comunicar-se com GitHub Actions. Para obter mais informações, consulte "Comunicação entre os executores auto-hospedados e GitHub".
  • A máquina tem recursos de hardware suficientes para o tipo de fluxos de trabalho que você planeja executar. O aplicativo do executor auto-hospedado requer apenas recursos mínimos.
  • Se você desejar executar fluxos de trabalho que usam ações do contêiner do Docker ou dos contêineres de serviço, você deverá usar uma máquina Linux e o Docker deve estar instalados.

Sistemas operacionais compatíveis com executores auto-hospedados

Os sistemas operacionais a seguir são compatíveis com o aplicativo de execução auto-hospedado.

Linux

  • Red Hat Enterprise Linux 7
  • CentOS 7
  • Oracle Linux 7
  • Fedora 29 ou versão posterior
  • Debian 9 ou versão posterior
  • Ubuntu 16.04 ou versão posterior
  • Linux Hortelã 18 ou versão posterior
  • openSUSE 15 ou versão posterior
  • SUSE Enterprise Linux (SLES) 12 SP2 ou versão posterior

Windows

  • Windows 7 64-bit
  • Windows 8.1 64-bit
  • Windows 10 64-bit
  • Windows Server 2012 R2 64-bit
  • Windows Server 2016 64-bit
  • Windows Server 2019 64-bit

MacOS

  • macOS 10.13 (High Sierra) or versão posterior

Comunicação entre executores auto-hospedados e GitHub

As enquetes dos executores auto-hospedados GitHub para recuperar atualizações do aplicativo e verificar se algum trabalho está na fila para processamento. O executor auto-hospedado usa uma enquete longa HTTPS que abre uma conexão com GitHub por 50 segundos e, se nenhuma resposta for recebida, o período de espera se encerra a uma nova enquete é criada. O aplicativo deve estar rodando na máquina para aceitar e executar trabalhos do GitHub Actions.

Você deve garantir que a máquina tenha acesso adequado à rede para comunicar-se com as GitHub URLs listadas abaixo.

github.com
api.github.com
*.actions.githubusercontent.com

Se você usar uma lista de endereços IP permitida para a sua a sua organização ou conta corporativa do GitHub, você deverá adicionar o endereço IP do executor auto-hospedado à lista de permissões. Para obter mais informações consulte "Gerenciar endereços IP permitidos para a sua organização" ou "Aplicar as configurações de segurança na sua conta corporativa".

Você também pode usar executores auto-hospedados com um servidor proxy. Para obter mais informações, consulte "Usar um servidor proxy com executores auto-hospedados."

Segurança dos executores auto-hospedados com repositórios públicos

Recomendamos que você não use runners auto-hospedados com repositórios públicos.

Bifurcações do seu repositório público podem potencialmente executar códigos perigosos na sua máquina de executor auto-hospedada, criando uma pull request que executa o código em um fluxo de trabalho.

Este não é um problema com executores hospedados no GitHub, pois cada executor hospedado no GitHub é sempre uma máquina virtual limpa e isolada, que é destruída no final da execução do trabalho.

Os fluxos de trabalho não confiáveis no seu executor auto-hospedado representam riscos de segurança significativos para seu ambiente de rede e máquina, especialmente se sua máquina persistir no ambiente entre os trabalhos. Alguns dos riscos incluem:

  • Programas maliciosos em execução na máquina.
  • Sair do sandbox do executor da máquina.
  • Expor acesso ao ambiente de rede da máquina.
  • Dados persistentes, indesejados ou perigosos na máquina.

Did this doc help you?