gbolo.docker

Docker - Ansible Rolle

Build-Status

Diese Rolle konfiguriert und installiert Docker vollständig auf den folgenden Plattformen:

  • RHEL/CentOS 7
  • Debian/Ubuntu

Diese Rolle unterstützt nur Docker-Versionen 1.11+.

Anforderungen

Rollenvariablen

Die folgenden Variablen können verwendet werden, um die Docker-Installation anzupassen:

# Betriebssystembezogen -------------------------------------------------------------------
## offizielle Docker-Repository verwenden
docker_repo_enabled: true
## Kanalstatus des Docker-Repository wählen
docker_repo_channel_stable_enabled: true
docker_repo_channel_edge_enabled: false
docker_repo_channel_test_enabled: false
## Name des zu installierenden Docker-Pakets
docker_pkg_name: "docker-ce"
## Zustand des Pakets (vorhanden, aktuell, usw.)
docker_pkg_state: present
## Name des Docker-Dienstes
docker_service_name: "docker"
## Soll der Docker-Dämon beim Booten starten?
docker_service_enable: true
## Name der Gruppe für die Docker-Socket-Datei
docker_group: "docker"
## Sollen wir python-docker-py für Ansible-Docker-Module installieren?
docker_install_py_module: false

# Proxy bezogen ----------------------------------------------------------------
## Soll der Docker-Dämon einen Proxy für ausgehende Verbindungen verwenden?
docker_proxy_enabled: false
## Liste der Umgebungsvariablen, die wir setzen sollten (Kommentare bei den nicht benötigten rausnehmen)
docker_proxy_env:
  - "HTTP_PROXY=http://proxy.example.com:80/"
  - "HTTP_PROXY=https://proxy.example.com:443/"
  - "NO_PROXY=localhost,127.0.0.1,internalhub.example.com"

# Docker-Client-Konfiguration --------------------------------------------------
## Authentifizierung für das Docker-Registry aktivieren
docker_client_config_enabled: false
## Speicherort, an den wir die Client-Konfiguration pushen sollten
docker_client_config_location: "/root/.docker/config.json"
# Für die Authentifizierung (docker login) verwenden Sie etwas wie:
#docker_client_config:
#  auths:
#    "https://test.tld:1234":
#      auth: "SOME_STRING"
#      email: "SOME_EMAIL"

# Standard-Dockerd-Konfigurationsoptionen ----------------------------------------
## https://docs.docker.com/engine/reference/commandline/dockerd/#/linux-configuration-file
docker_config_data_root: "/var/lib/docker"
docker_config_log_driver: ""
docker_config_log_opts: {}
docker_config_max_concurrent_downloads: 3
docker_config_max_concurrent_uploads: 5
docker_config_debug: false
docker_config_log_level: ""
docker_config_bridge: ~
docker_config_bip: "172.16.0.1/24"
docker_config_fixed_cidr: "172.16.0.0/24"
docker_config_fixed_cidr_v6: ""
docker_config_default_gateway: ""
docker_config_default_gateway_v6: ""
docker_config_selinux_enabled: false
docker_config_ip: "0.0.0.0"
docker_config_group: "{{ docker_group }}"
docker_config_insecure_registries: []

# Weitere benutzerdefinierte Docker-Einstellungen können zu diesem Dictionary hinzugefügt werden:
docker_config_custom: {}

Beispiel-Playbooks

Installieren Sie die neueste Docker stabile Version auf Ihrem lokalen CentOS-Server

- hosts: localhost
  roles:
     - { role: gbolo.docker, docker_pkg_state: latest }

Installieren Sie die neueste Docker Edge Version auf Ihrem lokalen CentOS-Server

- hosts: localhost
  roles:
     - { role: gbolo.docker, docker_pkg_state: latest, docker_repo_channel_edge_enabled: true }

Installieren Sie eine ältere Docker stabile Version auf Ihrem lokalen CentOS-Server

- hosts: localhost
  roles:
     - { role: gbolo.docker, docker_pkg_name: docker-ce-18.03.1.ce-1.el7.centos }

Fortgeschrittenes Playbook mit verschiedenen angewendeten Variablen

- hosts: localhost
  vars:
    # Docker-Container/Bilder in /opt/docker speichern
    docker_config_data_root: /opt/docker
    # Standard-Docker-Bridge-Subnetz ändern
    docker_config_bip: 172.16.77.77/24
    # Standard-Protokolltreiber auf journald setzen
    docker_config_log_driver: journald
    # docker_config_custom verwenden, um zusätzliche Einstellungen zu definieren, die nicht oben aufgeführt sind
    docker_config_custom:
      # Experimentellen Modus aktivieren
      experimental: true
      # Docker-API über die Socket-Datei und TCP bereitstellen
      hosts:
        - unix:///var/run/docker.sock
        - tcp://0.0.0.0:2376
      # Standard-Suchdomänen festlegen
      dns-search:
        - lab1.linuxctl.com
        - lab2.linuxctl.com

  roles:
    - role: gbolo.docker

Autor und Lizenz

docker Rolle geschrieben von:

Lizenz: MIT

KOSTENLOSE SOFTWARE, JA BITTE!

Über das Projekt

Role for Installation and Configuration of Docker

Installieren
ansible-galaxy install gbolo.docker
Lizenz
mit
Downloads
130
Besitzer
Father, Husband, Engineer