Files
ansible-playbooks/roles/docker/README.md
T
DerLinkman 30f3e9a4c6 rename dmc12 inventory to cloudlorean and vault admin_password
- replace inventory/dmc12.yml with cloudlorean.yml (+ group_vars) and update
  all README/AGENTS call examples and the inventory table
- move admin_password hash into encrypted vault.yml; remove plaintext copies
  from roles/bootstrap/defaults and group_vars/external.yml
- bootstrap.yml loads vault.yml via vars_files (same pattern as monitoring)
- monitoring: PSK config/registration updates, docker role defaults,
  os-updates logging/reboot refinements, ansible.cfg/execute.sh tweaks
- add .project-wiki knowledge base and .github agent instructions
2026-09-09 14:14:18 +02:00

3.7 KiB
Raw Blame History

Rolle docker

Installiert die Docker Engine über das offizielle Docker-Repository für Debian. Die Rolle fügt den Docker-GPG-Key hinzu, richtet eine APT-Quelle im deb822-Format ein und installiert alle benötigten Pakete (Engine, CLI, containerd, Buildx- und Compose-Plugin).

Siehe auch das Playbook playbooks/docker.yml sowie die Repo-README.

Voraussetzungen

  • Debian-Ziel-Host
  • Internetzugang zum Docker-Repository (download.docker.com)
  • Benutzer mit become-Rechten

Einbindung

Die Rolle wird typischerweise über das Playbook playbooks/docker.yml oder automatisch durch die bootstrap-Rolle (import_role) aufgerufen. Direkte Einbindung per import_role:

- hosts: all
  become: true
  user: admin
  roles:
    - role: docker
ansible-playbook -i inventory/cloudlorean.yml playbooks/docker.yml

Funktionsweise

tasks/main.yml inkludiert die eigentliche Installations-Logik aus tasks/install-docker.yml:

  1. apt-Cache aktualisieren – cache_valid_time: 3600
  2. Voraussetzungen installieren – ca-certificates, curl
  3. Keyring-Verzeichnis anlegen – /etc/apt/keyrings (Mode 0755)
  4. Docker GPG-Key herunterladen – nach /etc/apt/keyrings/docker.asc
  5. APT-Quelle einrichten – Template sources.list.j2 nach /etc/apt/sources.list.d/docker.sources (deb822-Format)
  6. apt-Cache aktualisieren – nach Repository-Hinzufügung
  7. Docker-Pakete installieren – docker_packages (benachrichtigt Handler Start Docker)

Variablen

Variable Typ Default Beschreibung
docker_mirror string https://download.docker.com/linux/debian Basis-URL des Docker-APT-Repositories
os_version_codename string {{ ansible_facts['distribution_release'] }} Codename der Distribution (für Suites:)
docker_packages list siehe unten Liste der zu installierenden Docker-Pakete

Default docker_packages:

docker_packages:
  - docker-ce
  - docker-ce-cli
  - containerd.io
  - docker-buildx-plugin
  - docker-compose-plugin

os_version_codename wird standardmäßig automatisch anhand von ansible_facts['distribution_release'] ermittelt und kann bei Bedarf überschrieben werden.

Templates

Template Ziel
sources.list.j2 /etc/apt/sources.list.d/docker.sources (deb822)

Handler

Handler Auslöser
Start Docker Installation/Aktualisierung der Docker-Pakete
Restart Docker (reserviert) systemd-Neustart
Reload Docker (reserviert) systemd-Reload

Tags

Die Rolle vergibt keine eigenen Tags. Bei Bedarf über das Playbook steuerbar.

Abhängigkeiten

  • Keine weiteren Rollen.
  • Collections: ansible.builtin (Bordmittel).

Hinweise

  • Die APT-Quelle liegt im deb822-Format vor, was ab Debian 12+ empfohlen wird. Das签ierte-Keyfile liegt unter /etc/apt/keyrings/docker.asc.
  • Der Handler Start Docker aktiviert und startet den Service, ohne bereits laufende Container zu beeinflussen.
  • Wird die Rolle innerhalb von bootstrap aufgerufen, übernimmt das Top-Level Playbook das become/user-Handling.