forked from uumas/ansible-docker
48 lines
1.7 KiB
YAML
48 lines
1.7 KiB
YAML
---
|
|
|
|
- name: Set postgres container vars
|
|
set_fact:
|
|
db_container_image: 'postgres:14-alpine'
|
|
db_container_env:
|
|
POSTGRES_USER: "{{ docker_service_name }}"
|
|
POSTGRES_PASSWORD: "{{ database_passwords[docker_service_name] }}"
|
|
db_container_data: /var/lib/postgresql/data
|
|
when: docker_database == 'postgres'
|
|
|
|
- name: Set mariadb container vars
|
|
set_fact:
|
|
db_container_image: mariadb:10
|
|
db_container_env:
|
|
MARIADB_USER: "{{ docker_service_name }}"
|
|
MARIADB_DATABASE: "{{ docker_service_name }}"
|
|
MARIADB_PASSWORD: "{{ database_passwords[docker_service_name] }}"
|
|
MARIADB_RANDOM_ROOT_PASSWORD: "{{ database_passwords[docker_service_name + '_root'] is not defined | string }}"
|
|
MARIADB_ROOT_PASSOWRD: "{{ database_passwords[docker_service_name + '_root'] | default(omit) }}"
|
|
db_container_data: /var/lib/mysql
|
|
db_image_port: 3306
|
|
when: docker_database == 'mariadb'
|
|
|
|
- name: Set mongo container vars
|
|
set_fact:
|
|
db_container_image: 'mongo:latest'
|
|
db_container_data: /data/db
|
|
when: docker_database == 'mongo'
|
|
|
|
- name: Set db published ports var
|
|
set_fact:
|
|
db_published_ports: ["127.0.0.1:{{ ports[docker_service_name].db }}:{{ db_image_port }}"]
|
|
when: ports[docker_service_name].db is defined
|
|
|
|
- name: Database container for {{ docker_service_name + ' (' + docker_database + ')' }}
|
|
docker_container:
|
|
name: "{{ docker_service_name }}_db"
|
|
image: "{{ db_container_image }}"
|
|
pull: true
|
|
env: "{{ db_container_env | default(omit) }}"
|
|
published_ports: "{{ db_published_ports | default(omit) }}"
|
|
restart_policy: always
|
|
volumes:
|
|
- "{{ docker_service_name }}_db:{{ db_container_data }}"
|
|
networks: "{{ container_networks | default(omit) }}"
|
|
log_driver: local
|