mirror of
https://github.com/acaloiaro/sfos
synced 2026-07-21 10:12:24 +00:00
| .. | ||
| compute_providers | ||
| config | ||
| modules | ||
| nixos/common | ||
| overlays | ||
| disko-config.nix | ||
| flake.lock | ||
| flake.nix | ||
| main.tf | ||
| outputs.tf | ||
| README.md | ||
| todo.md | ||
| variables.tf | ||
Bootstrap
Stand up a single or multi-machine sfos cluster.
Quick start
- Edit
main.tfand point thecompute_providermodule'ssourceat the compute provider you want to use, e.g.source = "./compute_providers/hetzner" - Edit
.envand plug in values for your compute provider. - Run
tofu applyto create compute resource(s). - Run
sfos-initto initialize the system with your nix configs.
Configure
Image registries
ghcr.io
- Create a GitHub classic PAT with permissions (https://github.com/settings/tokens) [X] repo [x] write:packages
- Encode the token in Docker's JSON format:
echo <YOUR PERSONAL ACCESS TOKEN> | docker login ghcr.io -u <GITHUB USERNAME>--password-stdin cd ../secrets- Encrypt Docker's JSON file as a secret
cat /var/run/user/$(id -u)/containers/auth.json | EDITOR="cp /dev/stdin" agenix -e docker_ghcr_auth_config_json.age -i <YOUR SSH PRIVATE KEY PATH>