Platforms
Step 2 of Setup asks which platform the agent will run on. The choice changes the install command and the execution profile shown in inventory.
| Platform | Install style | Default isolation | Typical use |
|---|---|---|---|
| Linux | Bash script configure.sh / release tarball | Process (or Container if you pick it) | VM or bare metal with IaC CLIs on PATH |
| Windows | PowerShell install script | Process (or Container) | Windows VM |
| Docker | docker run / Compose | Container | Host with Docker; IaC in engine images |
| Kubernetes | kubectl / Helm | Kubernetes pod | In-cluster agent; IaC as Jobs |
Linux
Use when Terraform, OpenTofu, Pulumi, or the AWS CLI is installed on the machine.
cd runner/installer
./configure.sh \\
--url https://platform.example.com/api/v1 \\
--token axreg_xxxxxxxx \\
--name production-runner
./run.sh
\# or
sudo ./svc.sh install --config /etc/axio-runner/config.yaml
sudo ./svc.sh startIf you select Container isolation on a Linux card, the generated command switches to the Docker registration path so IaC runs in engine images.
Windows
Same flow as Linux with a PowerShell script from the generated command. Process isolation expects CLIs on PATH. Container isolation requires Docker on that Windows host.
cd runner\\installer
.\\configure.ps1 `
-Url "https://platform.example.com/api/v1" `
-Token "axreg_xxxxxxxx" `
-Name "production-runner"
.\\run.ps1Container isolation on Windows requires Docker to be installed and running on the host.
Docker
Use docker run or Docker Compose to start the runner.
export AXIO_API_URL=https://platform.example.com/api/v1
export AXIO_REGISTRATION_TOKEN=axreg_xxxxxxxx
docker compose -f deploy/runner/docker-compose.agent.yml up -d --buildManual run:
docker run -d --restart always \\
-e AXIO_API_URL=https://platform.example.com/api/v1 \\
-e AXIO_REGISTRATION_TOKEN=axreg_xxxxxxxx \\
-e AXIO_RUNNER_PLATFORM=DOCKER \\
-v axio-runner-data:/var/lib/axio-runner \\
ghcr.io/anantacloud-oss/runner-core:latest For Terraform stages do not use runner-core alone. Use runner-agent (DooD) or runner-iac-tools. See IaC requirements
Scale replicas with RUNNER_REPLICAS and a distinct AXIO_RUNNER_NAME_PREFIX per fleet. Mint a token with max uses ≥ replica count.
Kubernetes
The generated command applies kubernetes/runner-deployment.yaml (or Helm) with a bootstrap Secret apiUrl, token, optional runnerName / runnerNamePrefix.
kubectl apply -f kubernetes/runner-deployment.yaml
\# or with Helm
helm upgrade --install axio-runner ./kubernetes/helm \\
--set apiUrl="https://platform.example.com/api/v1" \\
--set token="axreg_xxxxxxxx" Each replica must register as a distinct runner. Set AXIO_RUNNER_NAME_PREFIX; do not reuse one AXIO_RUNNER_NAME across pods.
Isolation vs platform
The group's internal pool isolation restricts which platforms you can pick later.
| Isolation | Allowed platforms |
|---|---|
| Process | Linux, Windows |
| Container | Linux, Windows, Docker |
| Kubernetes pod | Kubernetes only |
See Runner isolation
Execution profile in inventory
The execution profile shown in inventory is based on the persisted platform.
| Persisted platform | Profile shown |
|---|---|
| LINUX | Linux · Process |
| WINDOWS | Windows · Process |
| DOCKER | Docker |
| KUBERNETES | Kubernetes |