Skip to content

Get Started

alloy-provisioner is the engine that installs build environments from blueprints. It runs inside any Linux system. Choose the path that matches your situation:


  • On Linux (Native)


    You have a Linux machine (PC, laptop, or server, test rack, an existing VM managed by your own tools like Vagrant, VirtualBox, or Proxmox, or a WSL2 distro). Install alloy-provisioner and run blueprints directly.

    Best for: CI servers, test racks, shared build machines, manually provisioning your own VMs.

    Install natively →

  • In a Docker Image


    You want to replace a complex, hard-to-maintain Dockerfile with a declarative blueprint. alloy-provisioner runs inside the Docker build and produces a reproducible image using the same definition used by developers and CI.

    Best for: CI base images, replacing multi-stage Dockerfiles and chains of dependent images.

    Build Docker images →

  • CI/CD Pipelines


    You run GitHub Actions, GitLab CI, Jenkins, or another pipeline and want every job to use the same blueprint-defined environment. alloy-provisioner runs in the runner and provisions the toolchain so builds are identical to local and other CI.

    Best for: GitHub Actions, GitLab CI, Jenkins, Azure Pipelines, reproducible build jobs.

    Set up CI/CD →

  • With Alloy Host


    You are on a developer workstation (Windows, macOS, or Linux) and want isolated environments that don't touch your host machine. alloy-host manages VM and Docker lifecycles for you.

    Best for: local development, quickly testing a blueprint before publishing, switching between project environments.

    Use alloy-host →


Which path should I choose?

Situation Recommended path
CI server or test rack (Linux PC/laptop/server) Native
Existing VM I manage myself Native: run alloy-provisioner inside the VM
Docker CI image or base image Docker
GitHub Actions, GitLab CI, Jenkins, etc. CI/CD
Developer workstation (want isolation) alloy-host
Testing a blueprint before publishing alloy-host
Multiple devs, same environment Any path, all using the same blueprint

Before you start

All paths require a Linux environment with:

  • curl and wget: for downloading alloy-provisioner and toolchains
  • apt: alloy-provisioner targets Debian/Ubuntu-based systems
  • sudo or root access: provisioner tasks install system packages and tools

If you are using alloy-host or Docker, these requirements apply to the guest (the VM or container), not your host machine.

For a full list of provisioner subcommands and flags, see Provisioner CLI.