No description
  • Dockerfile 100%
Find a file
Darius Detzner 4adbe98178
Some checks failed
Images bauen / build (ansible) (push) Has been cancelled
Images bauen / build (terraform) (push) Has been cancelled
feat: Images neu aufgebaut (2.0.0), ein Build-Workflow für beide
ansible:
- node:24-trixie-slim (Debian 13, Node 24 LTS statt Ubuntu + Node 22), 1,39 GB war zu groß
- ansible-core 2.20.x mit requests und proxmoxer in einem venv (kein Nachinstallieren mehr)
- Collections proxmox/docker/general/posix fest im Image, ungenutzter User und sudo raus

terraform:
- node:24-trixie-slim statt bookworm + NodeSource Node 20 (ohne Support)
- Terraform 1.16.4 fest, Download mit SHA256-Prüfung, Multi-Stage
- Provider bpg/proxmox vorab im Plugin-Cache, TF_IN_AUTOMATION/TF_INPUT/CHECKPOINT_DISABLE

Workflow build-images.yaml (Matrix): pull immer, samstags ohne Cache, Tags latest/Version/Datum,
Probestart nach dem Build. Alte Einzel-Workflows und nginx-test entfernt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 22:25:01 +02:00
.forgejo/workflows feat: Images neu aufgebaut (2.0.0), ein Build-Workflow für beide 2026-09-29 22:25:01 +02:00
ansible feat: Images neu aufgebaut (2.0.0), ein Build-Workflow für beide 2026-09-29 22:25:01 +02:00
terraform feat: Images neu aufgebaut (2.0.0), ein Build-Workflow für beide 2026-09-29 22:25:01 +02:00
README.MD feat: Images neu aufgebaut (2.0.0), ein Build-Workflow für beide 2026-09-29 22:25:01 +02:00

🐳 Homelab · CI-Images

Eigene Container-Images für die Forgejo-Workflows des Homelabs. Sie liegen in der Registry dieses Forgejo: git.home.derminator404.de/darius/docker/<image>.

Image Genutzt von Inhalt
ansible Infra-, Gitops- und Runner-Repo (Einrichten, Deploy, Updates, Runner) ansible-core 2.20.x mit requests und proxmoxer in einem venv, Collections community.proxmox, community.docker, community.general, ansible.posix, dazu Git, SSH, Node.js 24
terraform Infra-Repo (10 · VMs · Terraform, 90 · VMs · Destroy) Terraform 1.16.4 (Prüfsumme kontrolliert), Proxmox-Provider bpg/proxmox ~> 0.113 vorab im Cache, Git, SSH, Node.js 24

Beide bauen auf node:24-trixie-slim auf (Debian 13 wie die VMs, Node.js 24 LTS für die Actions).

Tags

Tag Bedeutung
latest neuester Build
2.0.0 Version aus <image>/VERSION. Bei jeder größeren Änderung anheben
2026-10-03 Build-Datum. Damit kann ein Workflow auf einen älteren Stand zurück, falls ein Neubau etwas kaputt macht

Bauen

Workflow Images bauen (.forgejo/workflows/build-images.yaml), beide Images als Matrix:

  • bei einem Push auf main mit Änderungen in ansible/ oder terraform/,
  • jeden Samstag um 01:00 ohne Cache: frisches Basis-Image und aktuelle Pakete. Mit Cache würde Docker die alte apt-Schicht wiederverwenden und es kämen keine Updates,
  • manuell jederzeit.

Nach dem Bauen startet der Workflow jedes Image einmal zur Probe (ansible --version, terraform version).

Secret: REGISTRY_TOKEN, ein Token des Benutzers Darius mit write:package.

Versionen anheben

  • ansible-core: ANSIBLE_CORE_VERSION in ansible/Dockerfile. Neue Minor-Versionen können Playbooks ändern, deshalb bewusst anheben und testen.
  • Terraform: TERRAFORM_VERSION in terraform/Dockerfile. Danach im Infra-Repo den Image-Tag in 10-vms-terraform.yaml und 90-vms-destroy.yaml anpassen.
  • Collections / Provider: Versionsbereiche in den Dockerfiles.