docker
Роль Ansible: docker
Описание
Установка и настройка платформы контейнеризации docker.
Требования
- Ansible >= 2.4
Переменные роли
Все переменные, которые можно переопределить, хранятся в файле defaults/main.yml, а также в таблице ниже.
Название | Значение по умолчанию | Описание |
---|---|---|
docker_compose |
да | Установить пакет docker-compose |
docker_proxy |
нет | Включить настройку HTTP прокси |
docker_http_proxy |
"" | Адрес HTTP прокси сервера |
docker_https_proxy |
"" | Адрес HTTPS прокси сервера |
docker_no_proxy |
"" | Список хостов через запятую, которые не будут использовать HTTP прокси |
docker_version |
"17.06" | Версия docker, которая будет установлена на целевом сервере. Можно использовать latest для обновлений |
docker_default_config |
[ storage-driver: devicemapper, log-level: info ] | Конфигурация демона Docker |
docker_users |
[] | Добавить пользователей в группу docker. Пользователи должны существовать до добавления. Можно использовать конструкцию типа - {{ ansible_env['SUDO_USER'] | default(ansible_user_id) }} для указания пользователя, который используется для подключения ansible к хосту. |
Примеры
Плейбуки
Просто установите Docker с конфигурацией по умолчанию
- hosts: servers
roles:
- mongrelion.docker
Установите и настройте демон docker
- hosts: servers
roles:
- role: mongrelion.docker
docker_config:
live-restore: true
userland-proxy: false
Локальное тестирование
Предпочтительный способ локального тестирования роли — использовать Docker и molecule (версия 2.x). Вам необходимо установить Docker на вашем компьютере. Посмотрите "Начало работы" для получения пакета Docker, подходящего для вашей системы. Мы используем tox для упрощения процесса тестирования на нескольких версиях ansible. Чтобы установить tox, выполните:
pip install tox
Чтобы запустить тесты на всех версиях ansible (ВНИМАНИЕ: это может занять некоторое время)
tox
Чтобы запустить пользовательскую команду molecule в пользовательском окружении только с тестовым сценарием по умолчанию:
tox -e py27-ansible25 -- molecule test -s default
Для получения дополнительной информации о molecule перейдите в их документацию.
Если вы хотите запустить тесты на удаленном docker хосте, просто укажите переменную DOCKER_HOST
перед запуском тестов tox.
Лицензия
Этот проект имеет лицензию MIT. Смотрите LICENSE для получения дополнительных деталей.
Информация об авторе
Меня можно найти в Twitter: @mongrelion
Участники
- Carlos Leon (@mongrelion)
- Paweł Krupa (@paulfantom)
- Marcus Levine (@marcusianlevine)
- Manuel Hutter (@mhutter)
- Dmitri Bichko (@dbichko)
- Zane Westover (@zanewestover)
- Bruce Becker (@brucellino)
- David Wahlstrom (@drwahl)
- Max Oreshnikov (@maxim0r)
- Nicholas E. Rabenau (@nerab)
- Petr Balogh (@petr-balogh)
- ramz (@ageekymonk)
ansible-galaxy install mongrelion/ansible-role-docker