ct_redis

Ansible Роль: Контейнер Redis

Эта роль создает контейнер Redis на целевом хосте.

Требования

Целевой хост должен работать под управлением Docker и иметь установленный модуль Docker PIP.

Переменные роли

Пожалуйста, обратитесь к defaults/main.yml для полного списка доступных переменных.

Настройки сети

Переменная По умолчанию Описание
ct_redis_enable_ports true Флаг, который управляет проксированием стандартного порта Redis
ct_redis_bind_addr "127.0.0.1" IP-адрес, к которому привязывается контейнер Redis
ct_redis_bind_port "6379" Порт, к которому привязывается контейнер Redis
ct_redis_bind_ct_port "6379" Порт, к которому привязывается сервер Redis
ct_redis_ct_ports_default [] Стандартный порт Redis, проксированный на контейнер
Если {{ ct_redis_enable_ports }} равно false, этот список пуст
если true, список устанавливается на ["{{ ct_redis_bind_addr }}:{{ ct_redis_bind_port }}:{{ ct_redis_bind_ct_port }}"]
ct_redis_ct_ports_extra [] Произвольные порты, заданные пользователем, проксированные на контейнер
ct_redis_ct_ports {{ ct_redis_ct_ports_default + ct_redis_ct_ports_extra }} Результирующий набор портов, проксированных на контейнер
передается в параметр ports модуля docker_container

Настройки томов

Переменная По умолчанию Описание
ct_redis_path_config_base /etc/ct_redis Каталог, где размещаются пользовательские конфигурационные файлы
ct_redis_path_config_file {{ ct_redis_path_config_base }}/{{ ct_redis_ct_name }}.conf Имя файла конфигурации, по умолчанию соответствует имени контейнера
ct_redis_path_ct_config_file /usr/local/etc/redis/redis.conf Путь к пользовательской конфигурации внутри контейнера
ct_redis_path_data_base /srv/ct_redis Основной каталог для томов данных
ct_redis_path_data_volume {{ ct_redis_path_data_base }}/{{ ct_redis_ct_name }} Каталог данных, подключенный к контейнеру
ct_redis_path_ct_data /data Каталог данных внутри контейнера
ct_redis_ct_volumes_data ["{{ ct_redis_path_data_volume }}:{{ ct_redis_path_ct_data }}"] Подключение каталога данных
ct_redis_ct_volumes_config [] Подключение пользовательской конфигурации,
если {{ ct_redis_enable_custom_config }} равно true,
значение устанавливается на ["{{ ct_redis_path_config_file }}:{{ ct_redis_path_ct_config_file }}:ro"]
ct_redis_ct_volumes_extra [] Произвольные подключения, заданные пользователем, к контейнеру,
в формате ["/source:/dest"]
ct_redis_ct_volumes {{ ct_redis_ct_volumes_data + ct_redis_ct_volumes_config + ct_redis_ct_volumes_extra }} Результирующий набор подключений,
передается в параметр volumes модуля docker_container

Пользовательская конфигурация

Роль предоставляет простой флаг для включения пользовательского конфигурационного файла для контейнера Redis.

Переменная По умолчанию Описание
ct_redis_enable_custom_config false Флаг управляет подключением пользовательского конфигурационного файла к контейнеру
Если значение установлено в true, переменные {{ ct_redis_ct_volumes_config }} и {{ ct_redis_ct_command_custom_config }} переопределяются из vars; после включения флага файл конфигурации Redis создается из шаблона на целевом хосте и подключается к контейнеру, путь к конфигурационному файлу добавляется к CMD контейнера
ct_redis_cfg_extra {} Ключи и значения параметров конфигурации Redis для шаблона пользовательской конфигурации по умолчанию

Команда

Переменная По умолчанию Описание
ct_redis_ct_command_custom_config [] Путь к пользовательскому конфигурационному файлу внутри контейнера, который добавляется к CMD контейнера,
если {{ ct_redis_enable_custom_config }} равно true, значение устанавливается на ["{{ ct_redis_path_ct_config_file }}"]
ct_redis_ct_command_options [] Произвольные параметры, заданные пользователем, переданные исполняемому файлу redis-server
ct_redis_ct_command {{ [\"redis-server\"] + ct_redis_ct_command_custom_config + ct_redis_ct_command_options }} Результирующая команда, переданная в контейнер в качестве параметра command модуля docker_container

Зависимости

Нет.

Пример плейбука

# Создает контейнер Redis, привязанный к пользовательскому IP-адресу и порту
- hosts:
    - redis_server
  become: true
  roles:
    - role: almaops.ct_redis
      ct_redis_bind_addr: "192.168.0.10"
      ct_redis_bind_port: "26379"

# Создает контейнер Redis с пользовательской конфигурацией из вашего собственного шаблона redis.conf
- hosts:
    - redis_server
  become: true
  roles:
    - role: almaops.ct_redis
      ct_redis_enable_custom_config: true
      ct_redis_template_config: "/path/to/custom/redis.conf.j2"

Лицензия

MIT

Авторы

Валентин Гостев.

О проекте

Ansible role deploys Redis container

Установить
ansible-galaxy install almaops/ansible-role-ct_redis
Лицензия
mit
Загрузки
440
Владелец
Premium IT Consulting