Este repositório contém a configuração para executar um runner do GitHub Actions dentro de um container Docker. Isso permite executar jobs do GitHub Actions em um ambiente isolado e consistente.
Dockerfile: Define a imagem Docker para o runner do GitHub Actions.docker-compose.yaml: Configura o serviço Docker para executar o runner.entrypoint.sh: Script de entrada para configurar e iniciar o runner..gitignore: Especifica arquivos ignorados pelo Git (como arquivos.env).
- Docker
- Docker Compose (opcional, mas recomendado)
- Variáveis de ambiente
GITHUB_TOKENeGITHUB_URLconfiguradas.
-
Clone o repositório:
git clone <repository_url> cd <repository_name>
-
Defina as variáveis de ambiente:
Crie um arquivo
.envna raiz do repositório com as seguintes variáveis:GITHUB_TOKEN=<seu_token_do_GitHub> GITHUB_URL=<URL_do_seu_repositório_GitHub>Substitua
<seu_token_do_GitHub>pelo seu token do repositório do GitHub e<URL_do_seu_repositório_GitHub>pela URL do seu repositório.Atenção: Certifique-se de que o arquivo
.envesteja listado no.gitignorepara evitar o commit acidental do token. -
Execute o runner com Docker Compose (recomendado):
docker-compose up -d
Ou, se preferir, construa e execute o container manualmente:
docker build -t github-runner . docker run -d --name github-runner \ -e RUNNER_NAME=runner-docker \ -e RUNNER_WORK_DIRECTORY=_work \ -e RUNNER_TOKEN=<seu_token_do_GitHub> \ -e RUNNER_REPOSITORY_URL=<URL_do_seu_repositório_GitHub> \ github-runner
O Dockerfile usa a imagem base ubuntu:24.04 e instala as dependências necessárias para executar o runner do GitHub Actions. Ele também baixa e extrai o runner, define um usuário não-root para segurança e copia o script entrypoint.sh.
O docker-compose.yaml simplifica a execução do runner. Ele define um serviço chamado github-runner que usa o Dockerfile para construir a imagem. Ele também define as variáveis de ambiente necessárias e configura o container para reiniciar automaticamente, a menos que seja explicitamente interrompido.
O entrypoint.sh é o script que configura e inicia o runner do GitHub Actions. Ele remove qualquer configuração existente, configura o runner com a URL e o token fornecidos e, em seguida, inicia o runner.
- Token do GitHub: O
GITHUB_TOKENé usado para autenticar o runner no GitHub. Mantenha este token em segurança e não o compartilhe publicamente. - Usuário não-root: O runner é executado como um usuário não-root para minimizar o impacto de possíveis vulnerabilidades.
.gitignore: O arquivo.gitignoregarante que arquivos sensíveis, como.env, não sejam acidentalmente commitados no repositório.
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e enviar pull requests.