Diese Version von GitHub Enterprise wurde eingestellt am 2021-09-23. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

About GitHub-hosted runners

GitHub bietet gehostete virtuelle Maschinen, um Workflows auszuführen. Die virtuelle Maschine umfasst eine Umgebung mit Tools, Paketen und Einstellungen für GitHub Actions.

GitHub Actions ist verfügbar mit GitHub Free, GitHub Pro, GitHub Free für Organisationen, GitHub Team, GitHub Enterprise Cloud, und GitHub AE. GitHub Actions ist nicht verfügbar für private Repositorys, die im Besitz von Konten mit älteren Pro-Repository-Plänen sind.

Note: GitHub Actions was available for GitHub Enterprise Server 2.22 as a limited beta. The beta has ended. GitHub Actions is now generally available in GitHub Enterprise Server 3.0 or later. For more information, see the GitHub Enterprise Server 3.0 release notes.


Note: GitHub-hosted runners are not currently supported on GitHub Enterprise Server. You can see more information about planned future support on the GitHub public roadmap.

Informationen zu GitHub-gehosteten Runnern

Ein GitHub-gehosteter Runner ist eine virtuelle Maschine, die von GitHub gehostet wird und auf der die Runner-Anwendung der GitHub Actions installiert ist. GitHub bietet Runner mit den Betriebssystemen Linux, Windows und MacOS.

Wenn Du einen GitHub-gehosteten Runner verwendest, werden Wartung und Upgrade der Maschine für Dich erledigt. Sie können Workflows direkt auf der virtuellen Maschine oder in einem Docker-Container ausführen.

Du kannst in einem Workflow für jeden Job die Art des Runners festlegen. Jeder Job in einem Workflow wird in einer neuen Instanz der virtuellen Maschine ausgeführt. Alle Schritte des Jobs werden in derselben Instanz der virtuellen Maschine ausgeführt, sodass die Aktionen in diesem Job über das Dateisystem Informationen austauschen können.

Die GitHub Actions Läufer-Anwendung ist Open Source. Du kannst mitwirken und Issues im Läufer Repository einreichen.

Cloud-Hosts für GitHub-gehostete Runner

GitHub betreibt Linux- und Windows-Runner auf den virtuellen Maschinen nach Standard_DS2_v2 in Microsoft Azure, auf denen die Runner-Anwendung der GitHub Actions installiert ist. Die Runner-Anwendung auf GitHub-gehosteten Runnern ist eine Fork-Kopie des Azure-Pipelines-Agenten. Bei Azure werden eingehende ICMP-Pakete werden für alle virtuellen Maschinen blockiert, so dass die Befehle ping und traceroute möglicherweise nicht funktionieren. Weitere Informationen zu den Ressourcen der Standard_DS2_v2-Maschinen findest Du unter „Serien Dv2 und DSv2“ in der Dokumentation zu Microsoft Azure.

GitHub hosts macOS runners in GitHub's own macOS Cloud.

Workflow continuity for GitHub-hosted runners

If GitHub Actions services are temporarily unavailable, then a workflow run is discarded if it has not been queued within 30 minutes of being triggered. For example, if a workflow is triggered and the GitHub Actions services are unavailable for 31 minutes or longer, then the workflow run will not be processed.

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.

Administrative Rechte von GitHub-gehosteten Runnern

Die virtuellen Maschinen unter Linux und macOS werden beide mit dem passwortlosen Befehl sudo ausgeführt. Wenn Sie Befehle ausführen oder Tools installieren müssen, die höhere Berechtigungen als der aktuelle Benutzer erfordern, können Sie sudo verwenden, ohne ein Passwort angeben zu müssen. Weitere Informationen findest Du im „Sudo-Handbuch“.

Die virtuellen Windows-Maschinen sind so konfiguriert, dass sie als Administratoren laufen, wobei die Benutzerkonten-Steuerung (UAC) deaktiviert ist. For more information, see "How User Account Control works" in the Windows documentation.

Unterstützte Runner und Hardwareressourcen

Hardware specification for Windows and Linux virtual machines:

  • CPU mit 2 Kernen
  • 7 GB RAM-Speicher
  • 14 GB SSD-Festplattenspeicher

Hardware specification for macOS virtual machines:

  • CPU mit 3 Kernen
  • 14 GB RAM-Speicher
  • 14 GB SSD-Festplattenspeicher

Warning: Ubuntu 16.04 is being deprecated. If any of your workflows use Ubuntu 16.04, migrate to Ubuntu 20.04 or 18.04. For more information, see the blog post.

Virtuelle UmgebungYAML-Workflow-Kennzeichnung
Windows Server 2019windows-latest oder windows-2019
Windows Server 2016windows-2016
Ubuntu 20.04ubuntu-latest oder ubuntu-20.04
Ubuntu 18.04ubuntu-18.04
macOS Big Sur 11macos-11
macOS Catalina 10.15macos-latest or macos-10.15

Note: The macOS 11 virtual environment is currently provided as a private preview only. Any users or organizations that are already using this runner can continue using it, but we're not accepting any further users or organizations at this time. The macos-latest YAML workflow label still uses the macOS 10.15 virtual environment.

Workflow logs list the runner used to run a job. For more information, see "Viewing workflow run history."

Supported software

The software tools included in GitHub-hosted runners 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.

Preinstalled software

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 Virtual Environment section. The link following Included Software will tell you the the preinstalled tools on the runner that ran the workflow. Installed software link For more information, see "Viewing workflow run history."

For the overall list of included tools for each runner operating system, see the links below:

GitHub-gehostete Runner enthalten zusätzlich zu den oben aufgeführten Paketen die standardmäßig integrierten Tools des Betriebssystems. Zum Beispiel beinhalten Ubuntu und macOS Läufer grep, find, und which neben anderen Standard-Tools.

Using preinstalled software

We recommend using actions to interact with the software installed on runners. This approach has several benefits:

  • Usually, actions provide more flexible functionality like versions selection, ability to pass arguments, and parameters
  • It ensures the tool versions used in your workflow will remain the same regardless of software updates

Wenn Sie ein bestimmtes Tool anfordern möchten, öffnen Sie bitte einen Issue unter actions/virtual-environments. This repository also contains announcements about all major software updates on runners.

Installing additional software

You can install additional software on GitHub-hosted runners. For more information, see "Customizing GitHub-hosted runners".

IP addresses

Notiz: Wenn Du eine Liste mit erlaubten IP-Adressen für Dein Organisations- oder Unternehmenskonto auf GitHub verwendest, kannst Du keine GitHub-gehosteten Runner verwenden, sondern benötigst stattdessen selbst-gehostete Runner. Weitere Informationen findest Du unter „Informationen zu selbst-gehosteten Runnern“.

Windows and Ubuntu runners are hosted in Azure and subsequently have the same IP address ranges as the Azure datacenters. macOS runners are hosted in GitHub's own macOS cloud.

To get a list of IP address ranges that GitHub Actions uses for GitHub-hosted runners, you can use the GitHub REST API . For more information, see the actions key in the response of the "Get GitHub meta information" endpoint. You can use this list of IP addresses if you require an allow-list to prevent unauthorized access to your internal resources.

The list of GitHub Actions IP addresses returned by the API is updated once a week.

File systems

GitHub führt Aktionen und Shell-Befehle in bestimmten Verzeichnissen auf der virtuellen Maschine aus. Die Dateipfade auf virtuellen Maschinen sind nicht statisch. Verwende die von GitHub bereitgestellten Umgebungsvariablen zum Erstellen von Dateipfaden für die Verzeichnisse home, workspaceund workflow.

VerzeichnisUmgebungsvariableBeschreibung
homeHOMEEnthält benutzerbezogene Daten. In diesem Verzeichnis können sich beispielsweise die Anmeldeinformation aus einem Anmeldeversuch befinden.
workspaceGITHUB_WORKSPACEAktionen und Shell-Befehle werden in diesem Verzeichnis ausgeführt. Eine Aktion kann den Inhalt dieses Verzeichnisses ändern, auf den dann nachfolgende Aktionen zugreifen können.
workflow/event.jsonGITHUB_EVENT_PATHDie POST-Nutzlast des Webhook-Ereignisses, das den Workflow ausgelöst hat. GitHub schreibt dies bei jeder ausgeführten Aktion neu, sodass der Dateiinhalt zwischen den Aktionen isoliert wird.

Eine Liste der von GitHub für jeden Workflow erstellten Umgebungsvariablen findest Du unter „Umgebungsvariablen verwenden“.

Docker-Container-Dateisystem

Für Aktionen, die in Docker-Containern ausgeführt werden, befinden sich statische Verzeichnisse im Pfad /github. Wir empfehlen jedoch dringend, die Standard-Umgebungsvariablen zu verwenden, um Dateipfade in Docker-Containern zu erstellen.

In GitHub wird das Pfadpräfix /github reserviert, und es werden drei Verzeichnisse für Aktionen erstellt.

  • /github/home
  • /github/workspace - Hinweis: GitHub Actions muss vom Standard-Docker-Benutzer (root) ausgeführt werden. Stelle sicher, dass Dein Docker-File die Anweisung USER (Benutzer) nicht setzt, anderenfalls wirst Du nicht in der Lage sein, auf GITHUB_WORKSPACE zuzugreifen.
  • /github/workflow