Denne vejledning guider dig gennem installation af Docker på flere værter ved hjælp af Ansible og den populære community-vedligeholdte Ansible-rolle geerlingguy.docker.


Forudsætninger

Før du starter, skal du sikre dig, at du har:


Trin 1: Opret Ansible Playbook

Opret en fil ved navn docker-playbook.yml:

- name: Install Docker using geerlingguy.docker role
  hosts: all
  become: yes  # Brug sudo til at eskalere rettigheder
  gather_facts: yes

  roles:
    - geerlingguy.docker

Denne enkle playbook anvender Docker-installationsrollen på alle specificerede værter.


Trin 2: Definer rolle- og samlingsafhængigheder

Opret en fil ved navn requirements.yml for tydeligt at definere de eksterne Ansible-rolle- og samlingsafhængigheder:

roles:
  - name: geerlingguy.docker
    version: 7.4.1  # Angiv version for ensartethed

collections:
  - name: community.docker
    version: ">=3.0.0"

Angivelse af versioner sikrer gentagelige og konsistente udrulninger.


Trin 3: Installer påkrævede roller og samlinger

Kør følgende kommando for at installere de afhængigheder, der er angivet i requirements.yml:

ansible-galaxy install -r requirements.yml

Denne kommando henter og installerer både rollen og samlingen.


Trin 4: Kør din Playbook

Kør din playbook ved hjælp af Ansibles kommandolinjegrænseflade. Du kan angive dit inventory direkte i kommandolinjen for nemheds skyld:

ansible-playbook docker-playbook.yml -i "host1,host2," -u root

Erstat host1 og host2 med dine faktiske værtsnavne eller IP-adresser.

Bemærk:

  • Kommaet i slutningen af inline-inventory er påkrævet.
  • Valgmuligheden -u root angiver den bruger, Ansible anvender til at oprette forbindelse til værterne; tilpas dette ud fra din SSH-opsætning.

Bekræft Docker-installationen

Efter at have kørt din playbook kan du bekræfte Docker-installationen på hver vært ved at køre:

ssh root@host1 docker --version
ssh root@host2 docker --version

Du bør se et output svarende til:

Docker version 26.1.3, build XXXXXXX

Konklusion

Ved at følge denne strukturerede metode udnytter du Ansible effektivt til konsekvent og pålideligt at installere Docker på tværs af flere servere, hvilket forenkler din infrastrukturstyring.