docker
Ansible Роль: Docker
Эта роль устанавливает и настраивает Docker, а также Docker Compose и Docker SDK для Python.
Требования
Эта роль разработана и протестирована с использованием следующих версий Ansible:
Название | Версия |
---|---|
ansible | >= 2.9.13 |
ansible-base | >= 2.10.1 |
ansible-core | >= 2.11.2 |
Другие версии Ansible не были протестированы, но, вероятно, будут работать.
Установка
Используйте ansible-galaxy install igor_nikiforov.docker
, чтобы установить последнюю стабильную версию роли.
Вы также можете установить ее из файла требований ansible-galaxy install -r requirements.yml
:
# requirements.yml
---
roles:
- name: igor_nikiforov.docker
version: v1.1.0
Платформы
Название | Версия |
---|---|
Debian | buster |
Ubuntu | focal, groovy |
CentOS | 7.4+, 8 |
RedHat | 7.4+, 8 |
Другие дистрибутивы ОС не были протестированы, но, вероятно, будут работать. Если нет, пожалуйста, создайте PR!
Переменные
Название | Описание | По умолчанию |
---|---|---|
docker_supported_architectures | Список поддерживаемых архитектур Docker | ["x86_64", "arm64", "armhf", "s390x"] |
docker_install | Если True, Docker будет установлен | true |
docker_version | Версия Docker | latest |
docker_bash_completion_install | Если True, будет установлено автозаполнение bash для Docker | true |
docker_daemon_config | Конфигурация демона Docker | {} |
docker_service_enabled | Должен ли сервис Docker запускаться при загрузке | true |
docker_service_state | Состояние сервиса Docker | started |
docker_users | Список пользователей для добавления в группу Docker | [] |
docker_sdk_for_python_install | Если True, будет установлен Docker SDK для Python | false |
docker_sdk_for_python_version | Версия Docker SDK для Python | latest |
docker_compose_install | Если True, будет установлен Docker Compose | false |
docker_compose_version | Версия Docker Compose | latest |
docker_compose_bash_completion_install | Если True, будет установлено автозаполнение bash для Docker Compose | true |
Использование
Роль поддерживает все параметры конфигурации демона Docker, которые можно передавать через переменную docker_daemon_config
. Пример формата конфигурации JSON можно найти в официальной документации Docker. Для использования в роли необходимо преобразовать конфигурацию из формата JSON в формат YAML, например, используя этот онлайн инструмент.
Примеры
# playbook.yml
---
- hosts: all
become: True
gather_facts: False
pre_tasks:
- wait_for_connection: { timeout: 300 }
- setup:
vars:
docker_sdk_for_python_install: True
docker_compose_install: True
docker_daemon_config:
default-address-pools:
- { base: 172.16.0.0/16, size: 26 }
log-driver: "json-file"
log-opts:
max-size: "10m"
max-file: "3"
tasks:
- name: Установить Docker
import_role:
name: docker
Лицензия
MIT
Информация об авторе
ansible-galaxy install igor-nikiforov/ansible-role-docker