Benutzen
Der Gast
Was jeder Container und jede VM mitbringt, wo was liegt und wo deine eigenen Anpassungen hingehören.
Zugang
- Anmelden nur als root mit SSH-Key, ohne Passwort. Ein root-Passwort gibt es nur mit dem Modul desktop – für RDP, nicht für SSH.
- Ohne Netzwerk:
pct enter <ID>(Container) bzw. die serielle Konsoleqm terminal <ID>(VM) auf dem Proxmox-Host. - Weitere Keys: in
/root/.ssh/authorized_keyseintragen.
Was jeder Gast mitbringt
| Debian 13 | ohne Fremdquellen, Zeitzone Europe/Berlin |
| Firewall | nftables: eingehend nur SSH und die Ports der App (manche nur aus privaten Netzen) |
| etckeeper | jede Änderung an /etc landet in einem Git-Repo (git -C /etc log) |
update | ein Befehl für alle Updates (Aktualisieren) |
| Ansible | aus Debian, läuft nur lokal und stellt bei Installation und update den Sollzustand her |
| Selbsttest | bash /var/lib/iac/src/core/bin/iac-smoke – derselbe Test wie vor jeder Image-Veröffentlichung |
Eigene Anpassungen
Dateien, die mit # managed by iac – do not edit beginnen, gehören iac und werden bei jedem
update wieder auf den Sollzustand gebracht. Eigene Änderungen gehören in die Dateien, die iac
dafür vorsieht:
| Was | Wohin |
|---|---|
| Firewall-Regeln | /etc/nftables.d/90-local.nft |
| Einstellungen eines Dienstes | systemctl edit <dienst> |
| Konfiguration der App | die local-Datei, die die App nennt (z. B. traefik.local.yaml, configuration.local.py) |
Beispiel für einen zusätzlich offenen Port:
echo 'add rule inet iac input tcp dport 8443 accept' >> /etc/nftables.d/90-local.nft
systemctl reload nftables
Wo was liegt
| Pfad | Inhalt |
|---|---|
/etc/iac/instance.json | App, Version, aktive Module, Plattform – von iac geschrieben |
/etc/iac/settings.env | Einstellungen und erzeugte Secrets dieser Instanz (nur root) |
/var/lib/iac/src/ | iac-core und die App in der installierten Fassung |
/var/log/iac/iac.log | Protokoll jeder Installation und jedes update |
Wenn etwas nicht geht
bash /var/lib/iac/src/core/bin/iac-smoke # was läuft, was nicht
tail -n 100 /var/log/iac/iac.log # letzter Lauf
IAC_VERBOSE=1 bash /var/lib/iac/src/core/bin/iac-install # Sollzustand erneut, mit allen Details
iac-install lässt sich gefahrlos wiederholen: Es stellt nur den Sollzustand her.