Installing Docker node with ansible: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Rbritt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Rbritt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 6: | Zeile 6: | ||
<syntaxhighlight lang="yaml" ansibleplaybook> | |||
--- | --- | ||
- hosts: all | - hosts: all | ||
| Zeile 67: | Zeile 67: | ||
command: "{{ default_container_command }}" | command: "{{ default_container_command }}" | ||
state: present | state: present | ||
with_sequence: count={{ container_count }} | with_sequence: count={{ container_count }} | ||
</syntaxhighlight> | |||
Version vom 20. August 2025, 14:46 Uhr
Um alle Kubernetes Nodes genau gleich aufzusetzen, verwenden wir hier ansible.
Als Erstes muss ansible mitgeteilt werden, was installiert werden soll. Dies geschieht in den sogenannten playbooks.
In meinem Fall sieht das Playbook für die Node Installation folgendermassen aus:
---
- hosts: all
become: true
vars:
container_count: 4
default_container_name: docker
default_container_image: ubuntu
default_container_command: sleep 1d
tasks:
- name: Install aptitude
apt:
name: aptitude
state: latest
update_cache: true
- name: Install required system packages
apt:
pkg:
- apt-transport-https
- ca-certificates
- curl
- software-properties-common
- python3-pip
- virtualenv
- python3-setuptools
state: latest
update_cache: true
- name: Add Docker GPG apt Key
apt_key:
url: https://download.docker.com/linux/ubuntu/gpg
state: present
- name: Add Docker Repository
apt_repository:
repo: deb https://download.docker.com/linux/ubuntu focal stable
state: present
- name: Update apt and install docker-ce
apt:
name: docker-ce
state: latest
update_cache: true
- name: Install Docker Module for Python
pip:
name: docker
- name: Pull default Docker image
community.docker.docker_image:
name: "{{ default_container_image }}"
source: pull
- name: Create default containers
community.docker.docker_container:
name: "{{ default_container_name }}{{ item }}"
image: "{{ default_container_image }}"
command: "{{ default_container_command }}"
state: present
with_sequence: count={{ container_count }}