gbolo.docker
Docker - Ansible Rolle
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
- Betriebssystem: CentOS 7 oder Ubuntu
- Verbindung zum Docker-CE-Paket-Repository (https://download.docker.com)
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:
- George Bolo | linuxctl.com
Lizenz: MIT
KOSTENLOSE SOFTWARE, JA BITTE!
Installieren
ansible-galaxy install gbolo.dockerLizenz
mit
Downloads
130
Besitzer
Father, Husband, Engineer
