container: add support for redis

This commit is contained in:
uumas
2023-07-05 15:56:49 +03:00
parent 3f5b6c0558
commit 195210346b
4 changed files with 53 additions and 4 deletions

View File

@@ -3,6 +3,7 @@
docker_host_user: false
docker_volume_type: named
docker_mariadb_config: {}
docker_redis_persistence: false
dockerfile: []
docker_phpmyadmin_basicauth: true

View File

@@ -63,7 +63,13 @@ argument_specs:
elements: str
choices:
- memcached
- redis
default: []
docker_redis_persistence:
description: Whether to save redis data to persistent storage
type: bool
required: false
default: false
docker_phpmyadmin_basicauth:
description: Whether to enable basicauth for phpmyadmin
type: bool

View File

@@ -10,3 +10,45 @@
- "{{ container_networks[0] }}"
log_driver: local
when: "'memcached' in docker_additional_services"
- name: Redis
when: "'redis' in docker_additional_services"
block:
- name: Reset redis container mount definition var
set_fact:
redis_container_mount_definition: []
- name: Set up redis container data bind mount
when: docker_volume_type == 'bind'
block:
- name: Create redis data bind mount directory for {{ docker_service_name }}
file:
path: "{{ docker_mounts_dir }}/redis"
state: directory
- name: Set redis_container_mount_definition for redis data bind mount
set_fact:
redis_container_mount_definition:
- source: "{{ docker_mounts_dir + '/redis' }}"
target: /data
type: bind
- name: Set redis_container_mount_definition for redis data named volume
set_fact:
redis_container_mount_definition:
source: "{{ docker_service_name + '_redis' }}"
target: /data
type: volume
when: docker_volume_type == 'named'
- name: "Redis container for {{ docker_service_name }}"
docker_container:
name: "{{ docker_service_name }}_redis"
image: redis:alpine
pull: true
restart_policy: always
mounts: "{{ redis_container_mount_definition }}"
command: "{{ '--save 60 1' if docker_redis_persistence else omit }}"
networks:
- "{{ container_networks[0] }}"
log_driver: local

View File

@@ -24,10 +24,6 @@
include_tasks: proxy.yml
when: reverse_proxy_type != 'none'
- name: Additional services
include_tasks: additional.yml
when: docker_additional_services is defined
- name: Create directory /opt/{{ docker_service }}
file:
path: "/opt/{{ docker_service }}"
@@ -80,6 +76,10 @@
include_tasks: database.yml
when: docker_database != 'none'
- name: Additional services
include_tasks: additional.yml
when: docker_additional_services is defined
- name: Container volumes
import_tasks: volumes.yml