runner-images
SHA-256Official source for GitHub-hosted Actions runner images, covering Ubuntu, Windows and macOS environments refreshed weekly with patches and toolchains.
Smart Download
Download Download Version
vwin25/20260922.270 · 49.6 KB
The official recipe repo behind GitHub-hosted CI runner VM images.
Core Features
- Covers Ubuntu, Windows Server, Windows 11 Arm64, macOS and Xcode preview images
- Both x64 and arm64 architectures available
- Dozens of language runtimes, SDKs and CLI tools preinstalled
- Weekly security patches and software version updates
- Public GA/Beta promotion criteria with advance change announcements
What It Can't Do
- •Preinstalled software is fixed by the maintainers, so you cannot add or remove tools permanently, and anything installed at runtime is gone after the job. Beta images are outside the Actions SLA and are not recommended for production pipelines. The macOS -large and -xlarge suffixes are GitHub Actions only and require paid larger runners. When -latest moves to a newer OS, scripts depending on the old version can break, so pin explicit version labels instead of relying on -latest. Note this repo ships build recipes, not consumer installers.
Use Cases
- Choosing the right runner image label for a GitHub Actions workflow
- Preparing build environments for Azure Pipelines Microsoft-hosted agents
- Rebuilding the same CI VM recipe on-premises or in a private cloud
- Verifying preinstalled software versions when debugging CI failures
Detailed Introduction
runner-images is the open-source repository that builds and maintains the virtual machine images powering GitHub-hosted runners for GitHub Actions and Microsoft-hosted agents for Azure Pipelines. It ships image definitions for Ubuntu 22.04/24.04/26.04 (x64 and arm64), Ubuntu Slim, Windows Server 2022/2025, Windows 11 Arm64, plus macOS 14/15/26 and Xcode preview images. Each image is rebuilt weekly with security patches and updated language runtimes, SDKs and CLI tools. Compared with hand-rolled CI base images or community Docker layers, it offers officially maintained, SLA-backed toolchains and predictable `-latest` label semantics, so workflows stay reproducible without owning patch management. The repo also documents GA/Beta image promotion criteria and lets users request software additions through issues.
Troubleshooting & FAQ (2)
How-toWhat are the correct Azure Marketplace SKUs for Generation 2 VMs with Windows Server 2025 and Ubuntu 24.04?
To use Generation 2 VM images on Azure, update the SKU references in your deployment or image build configuration:
**Windows Server 2025:** Change the SKU from 2025-Datacenter to 2025-Datacenter-g2. The -g2 suffix explicitly selects the Generation 2 image.
**Ubuntu 24.04 LTS:** Change the SKU from server-gen1 to server. The plain server SKU is the canonical default for Ubuntu 24.04 and is already Generation 2 — the -gen1 variant must be removed.
After updating, redeploy or rebuild your images to pick up Gen2 support (required for features like UEFI boot, Trusted Launch, and larger VM sizes).
TroubleshootingHow to fix Maven build or Maven Central deployment failures after Ubuntu runners upgraded from Maven 3.9.16 to 3.10.0?
Maven 3.10.0 introduces stricter POM validation, so builds that worked with Maven 3.9.16 can fail or produce deployment errors such as "Bundle has content that does NOT have a .pom file." As a workaround, pin Maven 3.9.16 in CI instead of using the Maven version preinstalled on ubuntu-24.04. For Azure DevOps, add this before the Maven build:
- bash: |
set -euo pipefail
curl -fsSL https://archive.apache.org/dist/maven/maven-3/3.9.16/binaries/apache-maven-3.9.16-bin.tar.gz -o /tmp/maven.tar.gz
mkdir -p "$HOME/tools"
tar -xzf /tmp/maven.tar.gz -C "$HOME/tools"
echo "##vso[task.prependpath]$HOME/tools/apache-maven-3.9.16/bin"
Verify with mvn -version, then run the deployment. On GitHub Actions, replace the Azure DevOps prepend command with:
echo "$HOME/tools/apache-maven-3.9.16/bin" >> "$GITHUB_PATH"
The permanent fix is to update the POM so it is compatible with Maven 3.10.0 validation, or keep Maven pinned to 3.9.16 until that is done.
Tags
Getting Started
Install the software
Double-click the downloaded installer and follow the prompts
Open the Available Images table in the repository README and find your target OS and architecture
Put the matching YAML label such as ubuntu-latest or windows-2022 into your workflow's runs-on field
Click the Included Software link in the table to confirm the languages and tool versions you need are present
- Open the Available Images table in the repository README and find your target OS and architecture
- Put the matching YAML label such as ubuntu-latest or windows-2022 into your workflow's runs-on field
- Click the Included Software link in the table to confirm the languages and tool versions you need are present
SHA-256 checksum verified
Checksum extracted from GitHub official Release page
SHA256 Checksum
cb1cbd1ef895aacf72d92269c48b5df5445aab63444b56a95966b499df2f0cd4This checksum is extracted from the GitHub Release page. Verify file integrity after download.
All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.
Open Source Transparency
View GitHub SourceUninstall Info
This repository is only image source code, so there is nothing to install locally. To stop using an image, simply change the runs-on label in your workflow or switch to a self-hosted runner. If you built Azure resources from the recipe yourself, delete the corresponding resource group and VMs in the Azure portal to avoid ongoing charges.
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
2 FAQs
Similar Projects
Visual Studio Code (Code - OSS)
A free, open-source code editor by Microsoft with rich extensions, debugging, and Git integration. The most popular developer tool worldwide.
opencode
OpenCode is a free, open-source AI coding agent that helps you write, refactor, and understand code. It offers two built-in modes: a full-access 'build' agent for active coding and a read-only 'plan' agent for safe exploration.
scrcpy
Display and control your Android device from your computer via USB or TCP/IP. No root required, high performance, low latency, supports audio and video mirroring.