Files
ansible-docker/roles/wordpress/tasks/main.yml
2024-07-28 01:20:10 +03:00

48 lines
1.8 KiB
YAML

---
- name: Reset dockerfile variable
set_fact:
dockerfile: []
- name: Set docker service full name (required because docker_env uses it)
set_fact:
docker_service_name: "wordpress-{{ docker_service_suffix }}"
when: docker_service_suffix is defined
- name: Add memcached php extension to container
set_fact:
dockerfile: >
{{ dockerfile +
['RUN apt-get update &&
apt-get install -y libmemcached-dev libssl-dev zlib1g-dev &&
pecl install memcached-3.2.0 && docker-php-ext-enable memcached'] }}
when: "'memcached' in docker_additional_services"
- name: Add pdo_mysql php extension to container
set_fact:
dockerfile: "{{ dockerfile + ['RUN docker-php-ext-install -j$(nproc) pdo_mysql'] }}"
when: "'pdo_mysql' in wordpress_php_extensions"
- name: Include additional volume vars
include_vars: "{{ item }}_volume.yml"
loop: "{{ wordpress_additional_volumes | default([]) }}"
- name: Wordpress container setup
ansible.builtin.include_role:
name: service
vars:
docker_service: wordpress
docker_image: wordpress:{{ wordpress_tag }}
docker_image_http_port: 80
docker_database: mariadb
docker_mounts: "{{ wordpress_docker_mounts + wordpress_www_volume + wordpress_log_volume }}"
docker_volume_type: bind
docker_env:
WORDPRESS_DB_HOST: "{{ docker_service_name }}-db"
WORDPRESS_DB_NAME: "{{ docker_service_name | replace('-', '_') }}"
WORDPRESS_DB_USER: "{{ docker_service_name | replace('-', '_') }}"
WORDPRESS_DB_PASSWORD: "{{ database_passwords[docker_service_name] }}"
WORDPRESS_CONFIG_EXTRA: |
define('WP_SITEURL', 'https://{{ docker_vhost_domains[docker_service_name][0] }}');
define('WP_HOME', 'https://{{ docker_vhost_domains[docker_service_name][0] }}');