kibatic.docker-systemd

kibatic.docker-systemd

Dieses Rollenspiel ermöglicht es, Einheitendateien im YML-Format (ähnlich wie bei Docker Compose) zu definieren und systemd-Einheiten auf Remote-Hosts zu generieren. Dies kann als sehr einfaches, leichtgewichtiges, aber leistungsfähiges Orchestrierungssystem betrachtet werden.

Build Status Ansible Role

Anforderungen

  • Docker-Daemon auf dem Hostsystem installiert

Installation

$ ansible-galaxy install kibatic.docker-systemd

Rollenspiel-Variablen

# Standard-Docker-Volumes, die in jedem Container eingebunden sind
# /etc/localtime ist erforderlich, um die Zeitzone des Hosts mit den Containern zu teilen
default_volumes:
  - /etc/localtime:/etc/localtime:ro
# Verzeichnis, in dem alle Containerdaten gespeichert werden: Volumes, hochgeladene Konfigurationsdateien, ...
container_data_home: '/home/cloud/containers'
# Standardoptionen, die an docker run übergeben werden
default_docker_options: ''
# Standardlabels, die in jedem Container gesetzt werden
default_docker_labels: []
# Standardnetzwerkname
default_network_name: default_network
# Einheiten, die vom System entfernt werden sollen
removed_units: []

Beispiel-Playbook

Ein Beispiel, wie man dein Rollenspiel benutzt (zum Beispiel mit übergebenen Variablen als Parameter), ist immer hilfreich für die Benutzer:

- hosts:      my.awsome.host.example.com
  roles:      [ kibatic.docker-systemd ]
  vars_files: [ vars/units/my-awsome-service/units.yml ]
  tags:
    - my-awsome-service

# Diese Zeile stellt sicher, dass ein entferntes Dienst nicht auf dem System vorhanden ist
- hosts: my.awsome.host.example.com
  roles: [ kibatic.docker-systemd ]
  vars:
    removed_units:
      - my-removed-service

Beispiel-Einheit

systemd_units:
  - name: symfony_web
    image: my_awsome_symfony_image
    restart_unit: true # ob die Einheit beim Ausführen des Rollenspiels neu gestartet werden soll oder nicht (kann gefährlich bei SQL-Clustern sein)
    host_copy: []
    environment:
      SYMFONY__DATABASE__HOST: symfony_db
      SYMFONY__DATABASE__USER: root
      SYMFONY__DATABASE__PASSWORD: root
      SYMFONY__DATABASE__NAME: demo

  - name: symfony_db
    image: mysql:5.5
    host_copy: []
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: demo

Lizenz

MIT

Über das Projekt

Ansible role to provision docker services using systemd

Installieren
ansible-galaxy install kibatic.docker-systemd
GitHub Repository
Lizenz
mit
Downloads
1.1k
Besitzer
Ajoutez de l'intelligence à vos systèmes