Instalacja Dockera za pomocą Ansible

Ostatni artykuł, w którym pokazałem jak skonfigurować API Dockera za pomocą playbooka Ansible zaowocował przysłanym mi pytaniem, czy równie prosto da się zautomatyzować instalację samego Dockera. Oczywiście że się da! Pierwsze moduły do Ansible miały na celu ułatwić zarządzanie pakietami i konfigurację systemów typu Linux. Pokarzę Ci teraz fragmenty z mojego playbooka (poszczególne zadania), którego używam do instalacji Dockera na RaspberryPi i dystrybucji Raspbian. Instalacja Dockera za pomocą Ansible składa się jedynie z kilku zadań.

Dodajemy repozytorium APT

Dystrybucja Raspbian bazuje na Debianie. Do zarządzania pakietami wykorzystywany jest menadżer APT. Źródłem paczek jest dla mnie oficjalne repozytorium Dockera. Dokładną instrukcję postępowania znajdziesz w oficjalnej dokumentacji projektu. Na początek musimy skonfigurować nowym repozytorium w konfiguracji APT. Pierwszym krokiem jest dodanie klucza GPG repozytorium Dockera.

- name: Dodaj klucz GPG repozytorium Dockera
  apt_key:
    url: https://download.docker.com/linux/debian/gpg
    state: present
  become: yes
  become_user: root
  become_method: sudo

Następnie dodajemy repozytorium pakietów dedykowanych dla dystrybucji Raspbian

- name: Dodaj repozytorium Dockera do APT
  apt_repository:
    repo: deb [arch=armhf] https://download.docker.com/linux/raspbian stretch edge
    filename: docker
    state: present
    update_cache: yes
  become: yes
  become_user: root
  become_method: sudo

Zauważmy, że dla bezpieczeństwa jest wprost wskazane, że chcemy dodać repozytorium dla platformy armhf. Parametr update_cache: yes wskazuje, że chcemy, aby poprawne dodanie konfiguracji zakończyło się odświerzeniem informacji o dostępnych pakietach.

Instalacja Dockera za pomocą Ansible

Na koniec pozostaje nam dodać dwa pakiety zawierające sam silnik Dockera oraz klienta tekstowej konsoli CLI. Brakujące pakiety systemowe zostaną automatycznie dobrane i także zainstalowane.

- name: Zainstaluj Dockera
  apt:
    name: [ docker-ce docker-ce-cli ]
    state: latest
    update_cache: no
  become: yes
  become_user: root
  become_method: sudo

Ustawiając parametr update_cache: no przyspieszymy proces instalacji. Nie ma potrzeby ponownie odświerzać informacji o pakietach, jeżeli zrobiliśmy to już w poprzednim kroku. W następnym kroku powinniśmy na stałę aktywować usługę, by była uruchamiana przy każdym starcie systemu, ale o tym pisałem w poprzednim artykule.


Subscribe
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

0 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
View all comments

ZdradziĆ Ci sekretY udanego projektu automatyzacji?

(link otwiera się w nowym oknie)