Runners

Runner Images

What's preinstalled on Tenki Linux and macOS runner images, how we build them with Packer and microVMs, and how to request custom images.

This page describes what's on a Tenki runner image out of the box, how we build them, and how custom images work.

Linux x64 default image

Tenki Linux x64 runners use the official GitHub Actions runner images maintained at actions/runner-images. The default image is Ubuntu 24.04.

Practical consequence: anything that runs on GitHub-hosted ubuntu-latest runs on Tenki Linux runners with no changes. The toolchains (Node, Python, Ruby, Java, Go, Rust, Docker, gcloud, AWS CLI, fastlane, Android SDK + NDK, etc.) are identical to GitHub's, on the same version cadence.

macOS default image

Tenki macOS Runners use a curated image based on macOS 15 Sequoia with the toolchain we recommend for iOS, macOS app, and cross-platform builds.

For Xcode version pinning, parallel Xcode availability, or fully custom macOS images, see macOS Xcode & Custom Images.

How we build images

Both Linux and macOS images are built with Packer and run as microVM-based images on our fabric. Internal customers (and now external) benefit from:

  • Reproducible image builds
  • Fast cold boot (~15 seconds)
  • Predictable image refresh cadence

Custom images

We support fully custom images for both Linux x64 and macOS. The typical use cases:

  • Internal SDKs, proprietary tooling, or licensed dependencies that can't live in a public registry
  • A specific Xcode / simulator matrix that needs to be locked in
  • Pre-warmed caches for very large monorepos

Custom images are scoped during onboarding and tied to committed capacity. Contact [email protected] to start the conversation.

What's on the image today?

If you want the exact tool/version list before migrating, email [email protected], we'll send the current manifest.

LinkedInProduct Hunt