Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork405
Requirements for self hosted runners
Shivam Mathur edited this pageJan 20, 2025 ·20 revisions
Note: This guide is for using self-hosted runners without docker. To set up a docker container with a self-hosted runner follow thisguide.
To set up a self-hosted runner for setup-php, make sure the following requirements are met on your system.
Ubuntu 20.04 (focal)andaboveare supported.The runner needs a user account having password-less sudo access, otherwise, you would have to enter the password on each workflow run.
# Add your user to the sudo group and enable password-less sudo for all sudoers.usermod -a -G sudo"$(id -un)"echo"%sudo ALL = (ALL) NOPASSWD: ALL"| sudo tee -a /etc/sudoers
- If your workflow usesservices, then make sure docker is installed.
curl https://get.docker.com| shsudo chmod o+rw /var/run/docker.sock- If you are using
WSL, check thewslversion of your distro usingwsl -l -v.
Connect your Windows docker service to aWSL 1distro using thisguide, forWSL 2distro follow thisguide.
Windows 7and above are supported.- The runner needs a user account that has Administrative privileges.
# Check that it lists Administrators in Local Group Membershipsnet user$env:USERNAME| findstr"Local Group Memberships"
Powershell Core 6.0or newer needs to be installed and added toPATHenvironment variable.
# Setup Latest Powershell Core using windows Powershell.Invoke-Expression"& {$(Invoke-RestMethod'https://aka.ms/install-powershell.ps1') } -AddToPath"
- If you are using
composer, installing7zwill speed it up onWindows.
# Install choco$installScript=Invoke-WebRequest-Uri"https://community.chocolatey.org/install.ps1"-UseBasicParsing& ([scriptblock]::Create($installScript))# Install 7-Zipchoco install-y--force 7zip.install
MacOS Big Sur 12.xand above are supported. Both Intel and ARM64macOSare supported.The runner needs a user account having password-less sudo access, otherwise, you would have to enter the password on each workflow run.
Run
visudosudo visudo
Make the following change
- %admin ALL=(ALL) ALL+ %admin ALL=(ALL) NOPASSWD: ALL