- Update README, AGENTS.md, docs/index.md, docs/deployment/cd.md, docs/services/forgejo.md: replace deploy-rs with Comin everywhere - Fix repo URL references (cryodev-server -> cryodev) - Fix forgejo admin create command to use shell alias - Rewrite cd.md for Comin-only deployment
3.5 KiB
3.5 KiB
Cryodev NixOS Configuration Documentation
Willkommen zur Dokumentation der cryodev NixOS-Infrastruktur.
Quick Links
Getting Started
- Voraussetzungen - Benötigte Tools
- Neuen Raspberry Pi hinzufügen - Kompletter Workflow für neue Clients
- SD-Image Referenz - Details zum Image-Build
- Erstinstallation (Server) - Bootstrap für x86_64 Hosts
- Neuinstallation - Reinstall mit Hardware-Änderungen
Services
- SOPS Secrets - Geheimnisverwaltung mit sops-nix
- Headscale - Self-hosted Tailscale Server
- Headplane - Web-UI für Headscale
- Tailscale - Mesh-VPN Client
- Mailserver - E-Mail Stack (Postfix/Dovecot)
- Forgejo - Git-Hosting mit CI/CD
- Netdata - Monitoring und Alerting
Deployment
- Continuous Deployment - Push- und Pull-basiertes Deployment
- DNS-Konfiguration - Benötigte DNS-Einträge
Architektur
Internet
|
cryodev.xyz
|
+-------------------+
| cryodev-main |
| (x86_64 Server) |
+-------------------+
| - Headscale |
| - Headplane |
| - Forgejo |
| - Mailserver |
| - Netdata Parent |
+-------------------+
|
Tailscale Mesh VPN
|
+-------------------+
| cryodev-pi |
| (Raspberry Pi 4) |
+-------------------+
| - Tailscale |
| - Netdata Child |
| - Comin (GitOps) |
+-------------------+
Installations-Szenarien
| Szenario | Beschreibung | Anleitung |
|---|---|---|
| Neuer Raspberry Pi | Config erstellen → Image bauen → Flashen | new-client.md |
| Erstinstallation (Server) | x86_64 Host, manuelle Installation | first-install.md |
| Neuinstallation | Bestehender Host, neue Hardware | reinstall.md |
Für Raspberry Pi: SD-Image Referenz
Verzeichnisstruktur
.
├── flake.nix # Entry point, inputs and outputs
├── constants.nix # Zentrale Config (Domains, IPs, Ports)
├── hosts/ # Host-spezifische Konfigurationen
│ ├── cryodev-main/
│ └── cryodev-pi/
├── modules/ # Wiederverwendbare NixOS-Module
│ └── nixos/
├── pkgs/ # Eigene Pakete
├── overlays/ # Nixpkgs Overlays
├── templates/ # Templates für neue Hosts
├── scripts/ # Helper-Scripts (install.sh)
├── apps/ # Nix Apps (rebuild)
└── lib/ # Helper-Funktionen (utils.nix)
Deployment-Strategien
| Host | Strategie | Tool | Beschreibung |
|---|---|---|---|
cryodev-main |
Pull-basiert | Comin | Pollt Repository auf Aenderungen |
cryodev-pi |
Pull-basiert | Comin | Pollt Repository auf Aenderungen |