Ansible playbook по установке Docker
Вот пример простого Ansible playbook, который устанавливает Docker на целевой системе. Этот плейбук предназначен для работы на серверах с ОС на базе Debian, таких как Ubuntu.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
--- - hosts: all become: yes tasks: - name: Update the apt package index apt: update_cache: yes - name: Install packages to allow apt to use a repository over HTTPS apt: name: - apt-transport-https - ca-certificates - curl - software-properties-common state: present - name: Add Docker's official GPG key apt_key: url: https://download.docker.com/linux/ubuntu/gpg state: present - name: Add Docker repository apt_repository: repo: deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable state: present - name: Update the apt package index again apt: update_cache: yes - name: Install Docker CE apt: name: docker-ce state: present - name: Ensure Docker is started and enabled systemd: name: docker enabled: yes state: started |
Пояснения:
- hosts: all: Playbook выполняется на всех целевых хостах.
- become: yes: Ansible выполняет команды с повышенными привилегиями (root).
- apt: Модуль для управления пакетами в системах на основе APT (Debian, Ubuntu).
- apt_key: Модуль для добавления ключей GPG для репозиториев.
- apt_repository: Модуль для управления репозиториями APT.
- systemd: Модуль для управления сервисами через
systemd
.
Этот playbook добавляет репозиторий Docker, устанавливает Docker и гарантирует, что служба Docker запущена и включена в автозагрузку. Вы можете сохранить этот код в файл, например, install_docker.yml
, и запустить его командой:
1 2 |
ansible-playbook -i hosts install_docker.yml |
Где hosts
— это ваш инвентарь с целевыми серверами.
Recommended Posts
Плейбук Ansible по развертыванию haproxy
15.02.2024