GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Docker

So installieren Sie Docker mit Ansible [Debian/Ubuntu]

Übersicht

Dieser Artikel zeigt einen Prozess zur Installation von Docker mit Ansible. Wir werden ein Ansible-Playbook erstellen, das nur fünf Codezeilen enthält. Was uns ermöglicht, ein so kleines Playbook zu haben, ist das offizielle Docker-Installationsskript, das den Docker-Installationsprozess für uns automatisiert. Das Skript funktioniert auf vielen wichtigen Linux-Distributionen wie – Debian, Ubuntu, Fedora, RedHat, CentOS, OpenSuse und Raspbian. Das Skript, das wir verwenden werden, kann unter docker install script angesehen und heruntergeladen werden . Für dieses Beispiel installieren wir Docker mit Ansible auf einer virtuellen Debian 11-Maschine.

Ihr Skript installiert Docker Compose zwar nicht, aber es ist trotzdem ein tolles Skript.

Dieser Prozess kann auf jeder Art von Linux-Maschine angewendet werden – Bare Metal, VM oder Cloud-Server.

Noch eine Randbemerkung – Wir haben auch einen Prozess behandelt, wie Docker-Container mit Ansible bereitgestellt werden – Der Prozess kann in diesem Beitrag betrachtet werden, und wie Nextcloud und WordPress auf Docker mit Ansible bereitgestellt werden.

Voraussetzungen

Um Docker erfolgreich mit Ansible zu installieren, sind die folgenden Voraussetzungen erforderlich:

  • Aktivierter SSH-Zugriff auf der Hostgruppe (Linux-Servermaschinen/VMs)
  • Ein Benutzer mit sudo-Berechtigungen (optional – um das Root-Konto zu verwenden)
  • Installiertes Curl-Tool auf Linux-Servern

Was ist Ansible?

Ansible ist ein Open-Source-Softwarebereitstellungs-, Konfigurationsverwaltungs- und Anwendungsbereitstellungstool, das eine Infrastruktur als Code ermöglicht. Es läuft auf vielen Unix-ähnlichen Systemen und kann sowohl Unix-ähnliche Systeme als auch Microsoft Windows konfigurieren.

Erstellen Sie die Hostdatei mit Inventar und Variablen

Zuerst müssen wir eine Hosts-Datei mit den Remote-Knoten erstellen und Login-Variablen setzen:

sudo nano /etc/ansible/hosts

Fügen Sie in der Textdatei die Hostparameter hinzu, damit sie ungefähr so ​​aussehen:

[docker]
192.168.122.87

[docker:vars]
ansible_user=sudouser1
ansible_password=user1password
ansible_become_password=user1password

Speichern Sie die Datei und beenden Sie sie.

Hosts-Dateiaufschlüsselung:

[docker]
192.168.122.87 – IP-Adresse des Remote-Hosts (VM/Server) unter der Hostgruppe mit dem Namen docker

[docker:vars]

ansible_user – Benutzername des Benutzers mit sudo-Berechtigungen (Sie können auch den Root-Benutzer festlegen)

ansible_password – sudo-Benutzerkennwort

ansible_become_password – sudo-Benutzerkennwort (für sudo-Berechtigungen beim Ausführen von Befehlen, für deren Ausführung sudo-Zugriff erforderlich ist)

Erstellen Sie das YAML-Playbook

Im nächsten Schritt erstellen wir das .yaml-Playbook, in dem wir die Konfiguration hinzufügen müssen. Sie können Playbook-Dateien überall erstellen, wo Sie möchten:

nano docker-install.yml

Sobald sich der Texteditor öffnet, kopieren und fügen Sie die Konfiguration von unten ein (achten Sie auf die Einrückung) und speichern Sie die Datei.

---
- hosts: docker
  tasks:
  - name: Install Docker
    ansible.builtin.shell: cd ~ && curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh

Playbook-Aufschlüsselung:

Hosts:Docker – Es wurde angegeben, dass dieses Buch nur auf unserer Docker-Hostgruppe ausgeführt und angewendet wird.

Aufgaben: – Angabe, dass eine Aufgabe auszuführen ist

Name: Name der Aufgabe, die wir ausführen

ansible.builtin.sheel: – Ansible-Shell-Modul, mit dem wir Bash-Shell-Befehle auf unseren Remote-Linux-Servern ausführen können

Der Shell-Befehl, den wir in unserem Ansible-Playbook ausgeführt haben:

„cd ~ &&curl -fsSL https://get.docker.com -o get-docker.sh &&sudo sh get-docker.sh“

Der erwähnte Shell-Befehl macht Folgendes:Er navigiert zuerst zum Home-Verzeichnis des Benutzers, lädt das Docker-Installationsskript in das Home-Verzeichnis herunter und führt dasselbe Installationsskript aus.

Führen Sie das Playbook aus

Wenn wir unsere Ressourcen, Maschinen und die Playbook-Datei bereit haben, können wir das Playbook ausführen, um den Docker-Installationsprozess zu initialisieren. Führen Sie Folgendes aus, um das Playbook nur für die bestimmte Hostgruppe auszuführen:

ansible-playbook docker-install.yml -l docker

Sobald Sie das Playbook gestartet haben, dauert es ungefähr 10 Minuten, bis es fertig ist (vielleicht etwas länger, es hängt von zahlreichen Faktoren ab).

Wenn Ansible die Ausführung des Playbooks beendet und Sie einen erfolgreichen Bericht wie im obigen Bild erhalten, können wir überprüfen, ob Docker erfolgreich installiert wurde. Docker sollte sofort laufen und wir können es mit dem Befehl überprüfen:

sudo systemctl status docker.service

sudo docker ps

Zusammenfassung

Um den Artikel zusammenzufassen – wir haben die Schritte zum Installieren von Docker mit Ansible ausgeführt. Hosts-Datei erstellt, in der wir unseren Remote-Knoten mit Anmeldevariablen für die SSH-Verbindung hinzugefügt, ein .yaml-Playbook geschrieben und ausgeführt haben, das das offizielle automatische Docker-Installationsskript herunterlädt und dasselbe Skript ausführt, das Docker automatisch installiert. Dank dieses Skripts besteht unser .yaml-Playbook nur aus fünf Konfigurationszeilen.

Da die Docker-Installation mit Ansible möglich ist, können auch Docker-Container bereitgestellt werden. Bei Interesse können Sie sich den Prozess in diesem Beitrag ansehen.

Vielen Dank für Ihre Zeit…


Docker
  1. Stellen Sie Nextcloud auf Docker mit Ansible bereit

  2. So installieren Sie Jenkins mit Docker

  3. So installieren Sie WordPress mit Docker

  4. So installieren Sie Vim in einem Docker-Container

  5. So installieren Sie Docker unter CentOS

Installieren Sie Navidrome mit Docker

So installieren Sie Gitea auf Ubuntu mit Docker

So installieren Sie Docker Compose auf Ubuntu

So installieren Sie Matrix Synapse Homeserver mit Docker

So installieren Sie Ansible AWX unter Debian 10

So installieren Sie Docker auf dem Mac