deploy-example/kubernetes/, not a packaged chart. Adapt it to your cluster. Scheduling, networking, and secrets are up to you.
How it maps to Compose
Scout backs up files on a specific machine, so the pod runs on the node that holds them and mounts its folders directly.Set up
1
Get the example
Copy the three files from
deploy-example/kubernetes/: kustomization.yaml, namespace.yaml, and backup-scout.yaml.2
Edit backup-scout.yaml
Set the node’s hostname (replacing
my-node), SCOUT_ID, STATION_URL, and the folder to back up. SCAN_DIR and the scan volume’s path must be the same host folder:backup-scout.yaml
3
Set the first admin password
Create Applying fails until this file exists, so the example never starts with a known password.
.env next to kustomization.yaml. It’s gitignored, and the Secret is generated from it:.env
4
Apply
3to1go namespace and the Scout pod.5
Finish in the UI
Open
http://<node>:6556/ and continue from Sign in and add the credential in the Compose install.Things to keep in mind
- Keep
/configon persistent storage. It holds the settings,encryption.key, andinstallation.id. Losing it means a new instance on Station, and losing the key means losing access to existing snapshots. See Encryption key. - One pod per set of folders. Don’t share
/config,/data/state, or/data/spoolbetween Scouts. The update strategy (maxSurge: 0) stops the old pod before starting a new one. - Scout always scans
/scan.SCAN_DIRonly sets the host path shown in Scout’s UI. To back up several folders, mount each at/scan/<name>as in Multiple folders and drives. - Mounts need write access. Scout writes
.upload_dirmarkers and restores files into/scan. The image runs as root, so files it creates are root-owned. - Reaching the UI.
hostPortmatches the Compose setup. If you use a Service or Ingress instead, keep it private or use HTTPS. See Sign-in. - Credentials. Paste the Scout credential in Scout’s UI, as with Compose. It’s saved in
/config. - Moving from Compose. Stop the Compose container (
docker compose down, without-v), point thehostPathvolumes at the old Compose folders, and keep the sameSCOUT_ID. Scout keeps its key, settings, and instance ID. - Updating. Change the image tag or digest and re-apply, or let a tool such as Renovate or Flux do it.
Several machines
Copybackup-scout.yaml once per node, changing its name, nodeSelector, SCOUT_ID, and paths, or generate the copies from one template.
Sample: one template per device with Flux
This keeps one Scout template in Git and builds a copy per device. Flux fills in the${...} values from each device’s entry. Create a backup-scout Secret with an INITIAL_ADMIN_PASSWORD key in the namespace first.
device-template/backup-scout.yaml
device-template/kustomization.yaml
Kustomization per device:
nodeSelector pins each copy to its device, so its pod only runs once that node joins the cluster. If the device previously ran Scout with Compose in <home>/backup-scout, these folders pick up its existing config, key, and state.