config inicial

This commit is contained in:
Mauro Torrez 2019-08-28 00:24:31 -03:00
parent 9c3d8e4300
commit e6f31d527b
2 changed files with 98 additions and 34 deletions

View File

@ -1,20 +1,29 @@
--- ---
# domain, webroot
wordpress_domain: example.com
wordpress_web_root: /
# database
wordpress_db_host: localhost
wordpress_db_user: wordpress
wordpress_db_password: password
wordpress_db_name: wordpress
wordpress_table_prefix: wp
# debug: cualquier valor distinto de "" es si
wordpress_debug: ""
# configuracion extra - va literal al config.php
wordpress_config_extra: ""
# container # container
mariadb_image: mariadb wordpress_image: wordpress:pfp7.3-fpm
mariadb_container: mariadb wordpress_container: wordpress
mariadb_volume: mariadb wordpress_volume: wordpress
# clave del usuario root (CAMBIAR) # binding del puerto wordpress
mariadb_root_password: password wordpress_bind_host: 127.0.0.1
wordpress_bind_port: 8001
# base de datos y usuario (opcionales)
# mariadb_database: db
# mariadb_user: db_user
# mariadb_password: db_pass
# binding del puerto mariadb
mariadb_bind_host: 127.0.0.1
mariadb_bind_port: 3306
# definido por rol docker # definido por rol docker
docker_network_name: dockernet docker_network_name: dockernet

View File

@ -1,33 +1,88 @@
--- ---
- name: start mariadb container - name: create wordpress database
mysql_db:
state: present
name: "{{ wordpress_db_name }}"
login_host: "{{ mariadb_host }}"
login_port: "{{ mariadb_port }}"
login_user: "{{ mariadb_user }}"
login_password: "{{ mariadb_password }}"
- name: create wordpress db user
mysql_db:
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: "{{ mariadb_user }}"
login_password: "{{ mariadb_password }}"
- name: start wordpress container
docker_container: docker_container:
image: "{{ mariadb_image }}" image: "{{ wordpress_image }}"
name: "{{ mariadb_container }}" name: "{{ wordpress_container }}"
volumes: volumes:
- "{{ mariadb_volume }}:/var/lib/mysql" - "{{ wordpress_volume }}:/var/www/html"
env: env:
MYSQL_ROOT_PASSWORD: "{{ mariadb_root_password }}" WORDPRESS_DB_HOST: "{{ mariadb_container }}"
MYSQL_DATABASE: "{{ mariadb_database | default(omit) }}" WORDPRESS_DB_USER: "{{ wordpress_db_user }}"
MYSQL_USER: "{{ mariadb_user | default(omit) }}" WORDPRESS_DB_PASSWORD: "{{ wordpress_db_password }}"
MYSQL_PASSWORD: "{{ mariadb_password | default(omit) }}" 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: networks:
- name: "{{ docker_network_name }}" - name: "{{ docker_network_name }}"
ports: ports:
- "{{ mariadb_bind_host }}:{{ mariadb_bind_port }}:3306" - "{% if wordpress_bind_port is not none %}\
{{ wordpress_bind_host+':' if not wordpress_bind_host is none else '' }}\
{{ wordpress_bind_port }}:80{% endif %}"
- name: inspect mariadb volume - name: template nginx config
copy:
content: |
server {
listen 443 ssl;
server_name {{ wordpress_domain }};
location {{ wordpress_web_root }} {
proxy_set_header Host $http_host;
proxy_pass http://{{ wordpress_container }};
}
}
dest: "{{ nginx_config_mountpoint }}/wordpress.conf"
register: ngconf
- name: restart frontend
docker_container:
name: "{{ nginx_container }}"
restart: yes
when: ngconf is changed
- name: inspect wordpress volume
docker_volume_info: docker_volume_info:
name: "{{ mariadb_volume }}" name: "{{ wordpress_volume }}"
register: volinfo register: volinfo
- name: export variables - name: export variables
set_fact: set_fact:
mariadb_container: "{{ lookup('vars','mariadb_container') }}" wordpress_volume: "{{ lookup('vars','wordpress_volume') }}"
mariadb_volume: "{{ lookup('vars','mariadb_volume') }}" wordpress_volume_mountpoint: "{{ volinfo.volume.Mountpoint }}"
mariadb_volume_mountpoint: "{{ volinfo.volume.Mountpoint }}"
mariadb_root_password: "{{ lookup('vars','mariadb_root_password') }}"
mariadb_database: "{{ lookup('vars','mariadb_database',default=omit) }}"
mariadb_user: "{{ lookup('vars','mariadb_user',default=omit) }}"
mariadb_password: "{{ lookup('vars','mariadb_password',default=omit) }}"
mariadb_host: localhost
mariadb_port: "{{ lookup('vars','mariadb_bind_port') }}"