gendall.docker_stack

Docker Stack

Eine Rolle zur Bereitstellung eines Docker Stacks aus einer docker-compose.yml-Datei im Verzeichnis des Playbooks.

Nutzung

Das Standard-Docker-Registry ist das GitHub Package Registry, kann jedoch durch Übergabe eines neuen Hostnamens (z. B. docker.io) als Variable docker_registry geändert werden. Die Anmeldeinformationen sind Passwörter als Umgebungsvariablen:

DOCKER_USERNAME=mydockeraccount
DOCKER_PASSWORD=ah32hg3hrgrmbds

Wenn eine Vaultenv Geheimnisdatei mit dem Namen secrets.conf im Verzeichnis des Playbooks vorhanden ist, wird diese auf den Server kopiert und eine .env-Datei erstellt, die Vault Anmeldeinformationen enthält, wenn sie als Umgebungsvariablen übergeben werden:

VAULT_ADDR=https://vault.company.com:443
VAULT_TOKEN=s.g23gberb32b322b23b4

Die Rolle erstellt Docker Secrets aus allen Dateien, die im Verzeichnis {{ inventory_dir }}/secrets gefunden werden. Aufgrund der Beschränkungen bei der Rotation von Docker Secrets entfernt die Rolle den Stack bei jedem Update und erstellt ihn neu. Dadurch ist sichergestellt, dass die Geheimnisse beim Aktualisieren nicht verwendet werden.

Wenn eine Umgebungsvariable PROJECT gesetzt ist, wird sie als Stack-Name verwendet. Wenn TAG und ENV gesetzt sind, werden diese an das Swarm weitergegeben.

Nutzung

Fügen Sie diese Rolle in ein Playbook ein, indem Sie eine requirements.txt Datei verwenden.

Beispiel-Playbook

- hosts: manager[0]
  roles:
    - docker-stack

Bereitstellung

Diese Rolle wird automatisch erstellt und bereitgestellt, wenn ein Semver Tag in das Repository gepusht wird.

Über das Projekt

A role to deploy a Docker Stack from a docker-compose.yml file and configure Vaultenv

Installieren
ansible-galaxy install gendall.docker_stack
GitHub Repository
Lizenz
Unknown
Downloads
409
Besitzer
Code, issues, docs and other trinkets