2019-08-28 01:13:32 -03:00

102 lines
3.2 KiB
YAML

---
- name: create wordpress database
mysql_db:
state: present
name: "{{ wordpress_db_name }}"
login_host: "{{ mariadb_host }}"
login_port: "{{ mariadb_port }}"
login_user: root
login_password: "{{ mariadb_root_password }}"
- name: create wordpress db user
mysql_user:
state: present
name: "{{ wordpress_db_user }}"
password: "{{ wordpress_db_password }}"
priv: "{{ wordpress_db_name }}.*:ALL"
login_host: "{{ mariadb_host }}"
login_port: "{{ mariadb_port }}"
login_user: root
login_password: "{{ mariadb_root_password }}"
- name: start wordpress container
docker_container:
image: "{{ wordpress_image }}"
name: "{{ wordpress_container }}"
volumes:
- "{{ wordpress_volume }}:/var/www/html"
env:
WORDPRESS_DB_HOST: "{{ mariadb_container }}"
WORDPRESS_DB_USER: "{{ wordpress_db_user }}"
WORDPRESS_DB_PASSWORD: "{{ wordpress_db_password }}"
WORDPRESS_DB_NAME: "{{ wordpress_db_name }}"
WORDPRESS_TABLE_PREFIX: "{{ wordpress_table_prefix }}"
# (default to unique random SHA1s, but only if other environment
# variable configuration is provided)
# WORDPRESS_AUTH_KEY:
# WORDPRESS_SECURE_AUTH_KEY:
# WORDPRESS_LOGGED_IN_KEY:
# WORDPRESS_NONCE_KEY:
# WORDPRESS_AUTH_SALT:
# WORDPRESS_SECURE_AUTH_SALT:
# WORDPRESS_LOGGED_IN_SALT:
# WORDPRESS_NONCE_SALT:
# (defaults to disabled, non-empty value will enable WP_DEBUG in
# wp-config.php)
WORDPRESS_DEBUG: "{{ wordpress_debug }}"
# (defaults to nothing, non-empty value will be embedded verbatim
# inside wp-config.php -- especially useful for applying extra
# configuration values this image does not provide by default such
# as WP_ALLOW_MULTISITE; see docker-library/wordpress#142 for more
# details)
WORDPRESS_CONFIG_EXTRA: "{{ wordpress_config_extra }}"
networks:
- name: "{{ docker_network_name }}"
ports:
- "{% if wordpress_bind_port is not none %}\
{{ wordpress_bind_host+':' if not wordpress_bind_host is none else '' }}\
{{ wordpress_bind_port }}:9000{% endif %}"
- name: template nginx config
copy:
content: |
server {
listen 80; # para debug
listen 443 ssl;
server_name {{ wordpress_domain }};
# root /var/www/html;
index index.php index.html;
# access_log /dev/stdout;
# error_log /dev/stdout info;
location {{ wordpress_web_root }} {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include fastcgi_params;
fastcgi_pass wordpress:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
dest: "{{ nginx_config_mountpoint }}/wordpress.conf"
register: ngconf
- name: restart frontend
docker_container:
name: "{{ nginx_container_name }}"
restart: yes
when: ngconf is changed
- name: inspect wordpress volume
docker_volume_info:
name: "{{ wordpress_volume }}"
register: volinfo
- name: export variables
set_fact:
wordpress_volume: "{{ lookup('vars','wordpress_volume') }}"
wordpress_volume_mountpoint: "{{ volinfo.volume.Mountpoint }}"