--- - 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 }}" host: "%" 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: - 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 }} { proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://{{ wordpress_container }}; } } 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 }}"