container: support phpmyadmin for mariadb

This commit is contained in:
uumas
2023-05-09 20:20:01 +03:00
parent a2225cea5f
commit 09daba7fd7
3 changed files with 27 additions and 2 deletions

View File

@@ -118,10 +118,10 @@ argument_specs:
- https - https
default: http default: http
ports: ports:
description: "ports[docker_service]['http'] or ports[docker_service]['https'] defines the port on which the container will listen on for reverse proxy connections. Required if reverse_proxy_type is caddy." description: "ports[docker_service]['http'] or ports[docker_service]['https'] defines the port on which the container will listen on for reverse proxy connections. Required if reverse_proxy_type is caddy. If ports[docker_service]['phpmyadmin'] is defined and docker_database is mariadb, phpmyadmin will is installed."
type: dict type: dict
docker_vhost_domains: docker_vhost_domains:
description: "docker_vhost_domains[docker_service] is a list which defines which domains should be proxied to the container. Required if reverse_proxy_type is not none" description: "docker_vhost_domains[docker_service] is a list which defines which domains should be proxied to the container. Required if reverse_proxy_type is not none. docker_vhost_domains[docker_service + '_phpmyadmin'] is used for phpmyadmin"
type: dict type: dict
docker_published_ports: docker_published_ports:
description: "A list of published ports in docker format (<host listen address>:<host port>:<container port>)" description: "A list of published ports in docker format (<host listen address>:<host port>:<container port>)"

View File

@@ -77,3 +77,18 @@
mounts: "{{ db_container_mount_definition }}" mounts: "{{ db_container_mount_definition }}"
networks: "{{ container_networks | default(omit) }}" networks: "{{ container_networks | default(omit) }}"
log_driver: local log_driver: local
- name: phpMyAdmin container for {{ docker_service_name }}
docker_container:
name: "{{ docker_service_name }}_phpmyadmin"
image: phpmyadmin
pull: true
env:
PMA_ABSOLUTE_URI: "https://{{ docker_vhost_domains[docker_service_name + '_phpmyadmin'][0] }}"
PMA_HOST: "{{ docker_service_name }}_db"
published_ports:
- "127.0.0.1:{{ ports[docker_service_name]['phpmyadmin'] }}:80"
restart_policy: always
networks: "{{ container_networks | default(omit) }}"
log_driver: local
when: docker_database == 'mariadb' and ports[docker_service_name]['phpmyadmin'] is defined

View File

@@ -21,3 +21,13 @@
- name: Include traefik vars - name: Include traefik vars
include_vars: traefik.yml include_vars: traefik.yml
when: reverse_proxy_type == 'traefik' when: reverse_proxy_type == 'traefik'
- name: Reverse proxy for phpmyadmin
include_role:
name: uumas.general.vhost
vars:
vhost_type: reverse_proxy
vhost_id: "{{ docker_service_name }}_phpmyadmin"
vhost_domains: "{{ docker_vhost_domains[docker_service_name + '_phpmyadmin'] }}"
proxy_target_port: "{{ ports[docker_service_name]['phpmyadmin'] }}"
when: docker_database == 'mariadb' and ports[docker_service_name]['phpmyadmin'] is defined