Hinweis: GitHub-gehostete Runner werden auf GitHub Enterprise Server derzeit nicht unterstützt. Weitere Informationen zur geplanten zukünftigen Unterstützung findest Du in der GitHub public roadmap.
About GitHub Actions on GitHub Enterprise Server
This article explains how site administrators can configure GitHub Enterprise Server to use GitHub Actions.
GitHub Actions ist standardmäßig für GitHub Enterprise Server nicht aktiviert. You'll need to determine whether your instance has adequate CPU and memory resources to handle the load from GitHub Actions without causing performance loss, and possibly increase those resources. You'll also need to decide which storage provider you'll use for the blob storage required to store artifacts and caches generated by workflow runs. Then, you'll enable GitHub Actions for your enterprise, manage access permissions, and add self-hosted runners to run workflows.
Bevor Du beginnst, solltest Du einen Plan für die Einführung von GitHub Actions in Dein Unternehmen erstellen. Weitere Informationen findest du unter Introducing GitHub Actions to your enterprise.
Wenn du dein Unternehmen von einem anderen Anbieter zu GitHub Actions migrierst, gibt es zusätzliche Überlegungen. Weitere Informationen findest du unter Migrating your enterprise to GitHub Actions.
Review hardware requirements
The CPU and memory resources available to Ihre GitHub Enterprise Server-Instance determine the number of runners that can be configured without performance loss. GitHub empfiehlt mindestens 8 vCPU und 64 GB Arbeitsspeicher zum Ausführen von GitHub Actions.
The peak quantity of connected runners without performance loss depends on such factors as job duration, artifact usage, number of repositories running Actions, and how much other work your instance is doing not related to Actions. Internal testing at GitHub demonstrated performance targets for GitHub Enterprise Server on a range of CPU and memory configurations.
vCPUs | Memory | Maximum Connected Runners |
---|---|---|
8 | 64 GB | 740 runners |
32 | 160 GB | 2700 runners |
96 | 384 GB | 7000 runners |
128 | 512 GB | 7000 runners |
GitHub measured maximum connected runners using multiple repositories, job duration of approximately 10 minutes, and 10 MB artifact uploads. You may experience different performance depending on the overall levels of activity on your instance.
Notes:
-
Beginning with GitHub Enterprise Server 3.6, GitHub documents connected runners as opposed to concurrent jobs. Connected runners represents the most runners you can connect and expect to utilize. It should also be noted that connecting more runners than you can expect to utilize can negatively impact performance.
-
Beginning with GitHub Enterprise Server 3.5, GitHub's internal testing uses 3rd generation CPUs to better reflect a typical customer configuration. This change in CPU represents a small portion of the changes to performance targets in this version of GitHub Enterprise Server.
If you plan to enable GitHub Actions for the users of an existing instance, review the levels of activity for users and automations on the instance and ensure that you have provisioned adequate CPU and memory for your users. For more information about monitoring the capacity and performance of GitHub Enterprise Server, see "Überwachen Ihrer Instanz."
For more information about minimum hardware requirements for Ihre GitHub Enterprise Server-Instance, see the hardware considerations for your instance's platform.
Weitere Informationen zum Anpassen von Ressourcen für eine vorhandene Instanz findest du unter Speicherkapazität erhöhen und CPU- und Arbeitsspeicherressourcen erhöhen.
Optionally, you can limit resource consumption on Ihre GitHub Enterprise Server-Instance by configuring a rate limit for GitHub Actions. For more information, see "Configuring rate limits."
External storage requirements
To enable GitHub Actions on GitHub Enterprise Server, you must have access to external blob storage.
GitHub Actions verwendet externen Blobspeicher, um durch Workflowausführungen generierte Daten zu speichern. Gespeicherte Daten umfassen Workflowprotokolle, Caches, und von Benutzer*innen hochgeladene Buildartefakte. The amount of storage required depends on your usage of GitHub Actions. Only a single external storage configuration is supported, and you can't use multiple storage providers at the same time.
All other GitHub Actions data, such as the workflow files in a repository's file structure, are stored on the data storage volume for Ihre GitHub Enterprise Server-Instance.
GitHub Actions supports these storage providers:
- Azure Blob storage
- Amazon S3
- Google Cloud Storage
- S3-compatible MinIO cluster
Note: These are the only storage providers that GitHub supports and can provide assistance with.
Es gibt andere S3-API-kompatible Speicherprodukte, für die sich GitHub-Partner selbst validiert haben, wenn sie mit GitHub Actions auf GitHub Enterprise Server arbeiten. Weitere Informationen findest du im Repository für GHES-Speicherpartner.
Für Speicherprodukte, die über das GitHub-Technologiepartnerschaftprogramm validiert wurden, ist der Speicheranbieter für den Support und die Dokumentation für die Verwendung des Speicherprodukts mit GitHub Actions verantwortlich.
Networking considerations
Wenn GitHub Actions für dein Unternehmen aktiviert ist, werden nur HTTP-Proxys unterstützt. SOCKS5- und HTTPS-Proxys werden nicht unterstützt. For more information about using a proxy with GitHub Enterprise Server, see "Configuring an outbound web proxy server."
Enabling GitHub Actions with your storage provider
Follow one of the procedures below to enable GitHub Actions with your chosen storage provider:
- Enabling GitHub Actions with Azure Blob storage
- Enabling GitHub Actions with Amazon S3 storage
- Enabling GitHub Actions with Google Cloud Storage
- Enabling GitHub Actions with MinIO storage
Managing access permissions for GitHub Actions in your enterprise
You can use policies to manage access to GitHub Actions. For more information, see "Enforcing policies for GitHub Actions in your enterprise."
Adding self-hosted runners
Hinweis: GitHub-gehostete Runner werden auf GitHub Enterprise Server derzeit nicht unterstützt. Weitere Informationen zur geplanten zukünftigen Unterstützung findest Du in der GitHub public roadmap.
To run GitHub Actions workflows, you need to add self-hosted runners. You can add self-hosted runners at the enterprise, organization, or repository levels. For more information, see "Selbst-gehostete Runner hinzufügen."
Managing which actions can be used in your enterprise
You can control which actions your users are allowed to use in your enterprise. This includes setting up GitHub Connect for automatic access to actions from GitHub.com, or manually syncing actions from GitHub.com.
For more information, see "About using actions in your enterprise."
Allgemeine Sicherheitshärtung für GitHub Actions
Weitere Informationen zu Sicherheitsmethoden für GitHub Actions findest du unter Sicherheitshärtung für GitHub Actions.
Reserved names
When you enable GitHub Actions for your enterprise, two organizations are created: github
and actions
. If your enterprise already uses the github
organization name, github-org
(or github-github-org
if github-org
is also in use) will be used instead. If your enterprise already uses the actions
organization name, github-actions
(or github-actions-org
if github-actions
is also in use) will be used instead. Once actions is enabled, you won't be able to use these names anymore.