Files
runix/README.md
T

3.2 KiB

Runix

Runix is an infrastructure management platform: one control plane manages a fleet of hosts through lightweight agents that dial out over WebSocket (NAT-friendly — nothing connects in to your servers). Manage Docker, Compose, systemd units and native daemons; browse and edit files; open terminals and consoles; schedule tasks; and update the whole fleet from the UI.

This repository holds the release binaries and the installer. The source lives in a separate repository.

Install

One command sets up a host. Run it as root; it asks what the host should be (control plane, agent, or both), checks prerequisites, installs under /opt/runix, and wires up systemd.

curl -fsSL https://vcs.astra-dev.online/svesnav/runix/raw/branch/main/install.sh | sudo sh

Prefer to pin a version, or your instance still requires sign-in to read raw files? Use the release asset instead — it downloads without a login:

curl -fsSL https://vcs.astra-dev.online/svesnav/runix/releases/download/v0.5.0/install.sh | sudo sh -s -- --role all-in-one

Roles

Command What it installs
sudo sh install.sh --role all-in-one Control plane and an agent on this host (single-host setup)
sudo sh install.sh --role server Control plane only
sudo sh install.sh --role agent --url https://runix.example.com --token <token> An agent that joins an existing control plane

The all-in-one and server roles can provision PostgreSQL in Docker for you (--db docker) or use one you already run (--dsn postgres://…). Add -y for an unattended install that takes sensible defaults. sh install.sh --help lists every flag.

Everything lives under one directory:

/opt/runix/bin/          runix-server, runix-agent
/opt/runix/etc/          server.env, agent.env  (0600 — secrets live here)
/opt/runix/postgres/     docker-compose.yml, data/   (control plane)
/opt/runix/agent/        supervised daemon state     (agent)

Update

Re-running the installer upgrades in place — binaries are replaced and services restarted, while your configuration (above all the JWT and encryption secrets) is preserved:

curl -fsSL https://vcs.astra-dev.online/svesnav/runix/raw/branch/main/install.sh | sudo sh -- -y

Or update from the UI: an administrator sees an Updates page that checks this repository for the latest release and updates the control plane and each agent with one click. Point a control plane at this repository with:

RUNIX_UPDATE_API_BASE=https://vcs.astra-dev.online/api/v1
RUNIX_UPDATE_REPO=svesnav/runix

Releases

Each release publishes, for linux/amd64 and linux/arm64:

  • runix-server_linux_<arch> — the control plane
  • runix-agent_linux_<arch> — the agent
  • install.sh — this installer
  • SHA256SUMS — checksums; the installer verifies every download against it

Binaries are built automatically from source on tag by the CI runner and published here and to the source repository.

Verify a download by hand

curl -fsSLO https://vcs.astra-dev.online/svesnav/runix/releases/download/v0.5.0/runix-server_linux_amd64
curl -fsSL  https://vcs.astra-dev.online/svesnav/runix/releases/download/v0.5.0/SHA256SUMS | sha256sum -c --ignore-missing