commit inicial
This commit is contained in:
parent
003e1c0cd4
commit
a47d2c8380
@ -1,25 +1,57 @@
|
|||||||
---
|
---
|
||||||
# domain, webroot
|
# domain, webroot
|
||||||
wordpress_domain: example.com
|
nextcloud_domain: example.com
|
||||||
wordpress_web_root: /
|
nextcloud_web_root: /
|
||||||
|
|
||||||
# database
|
# database
|
||||||
wordpress_db_host: localhost
|
nextcloud_db_engine: sqlite
|
||||||
wordpress_db_user: wordpress
|
|
||||||
wordpress_db_password: password
|
|
||||||
wordpress_db_name: wordpress
|
|
||||||
wordpress_table_prefix: wp
|
|
||||||
|
|
||||||
# debug: cualquier valor distinto de "" es si
|
# db name or path (sqlite)
|
||||||
wordpress_debug: ""
|
nextcloud_db_name: nextcloud
|
||||||
|
|
||||||
# configuracion extra - va literal al config.php
|
# mysql, mariadb, postgresql
|
||||||
wordpress_config_extra: ""
|
nextcloud_db_host: localhost
|
||||||
|
nextcloud_db_user: nextcloud
|
||||||
|
nextcloud_db_password: password
|
||||||
|
nextcloud_table_prefix: ""
|
||||||
|
|
||||||
|
# data dir (inside container)
|
||||||
|
nextcloud_data_dir: /var/www/html/data
|
||||||
|
|
||||||
|
# admin user
|
||||||
|
nextcloud_admin_user: admin
|
||||||
|
nextcloud_admin_password: password
|
||||||
|
|
||||||
|
# space separated trusted domains
|
||||||
|
nextcloud_trusted_domains: ""
|
||||||
|
|
||||||
|
# The install and update script is only triggered when a default command
|
||||||
|
# is used (apache-foreground or php-fpm). If you use a custom command
|
||||||
|
# you have to enable the install / update with
|
||||||
|
nextcloud_update: ""
|
||||||
|
|
||||||
|
# The use of Redis is recommended to prevent file locking problems. See
|
||||||
|
# the examples for further instructions.
|
||||||
|
# If you want to use Redis you have to create a separate Redis container
|
||||||
|
# in your setup / in your docker-compose file. To inform Nextcloud about
|
||||||
|
# the Redis container add:
|
||||||
|
nextcloud_redis_host: ""
|
||||||
|
nextcloud_redis_port: "6379"
|
||||||
|
|
||||||
|
# smtp
|
||||||
|
nextcloud_smtp_host: ""
|
||||||
|
nextcloud_smtp_secure: ""
|
||||||
|
nextcloud_smtp_port: ""
|
||||||
|
nextcloud_smtp_authtype: LOGIN
|
||||||
|
nextcloud_smtp_user: ""
|
||||||
|
nextcloud_smtp_password: ""
|
||||||
|
nextcloud_mail_from_address: ""
|
||||||
|
nextcloud_mail_domain: ""
|
||||||
|
|
||||||
# container
|
# container
|
||||||
wordpress_image: wordpress
|
nextcloud_image: nextcloud
|
||||||
wordpress_container: wordpress
|
nextcloud_container: nextcloud
|
||||||
wordpress_volume: wordpress
|
nextcloud_volume: nextcloud
|
||||||
|
|
||||||
# definido por rol docker
|
# definido por rol docker
|
||||||
docker_network_name: dockernet
|
docker_network_name: dockernet
|
||||||
|
122
tasks/main.yml
122
tasks/main.yml
@ -1,56 +1,86 @@
|
|||||||
---
|
---
|
||||||
- name: create wordpress database
|
# TODO: postgres support
|
||||||
|
# - name: create nextcloud database (pg)
|
||||||
|
# postgresql_db:
|
||||||
|
# state: present
|
||||||
|
# name: "{{ nextcloud_db_name }}"
|
||||||
|
# login_host: "{{ postgresql_host }}"
|
||||||
|
# login_port: "{{ postgresql_port }}"
|
||||||
|
# login_user: "{{ postgresql_root_password }}"
|
||||||
|
# login_password: "{{ postgresql_root_password }}"
|
||||||
|
|
||||||
|
# - name: create nextcloud db user (pg)
|
||||||
|
# postgresql_user:
|
||||||
|
# state: present
|
||||||
|
# name: "{{ nextcloud_db_user }}"
|
||||||
|
# password: "{{ nextcloud_db_password }}"
|
||||||
|
# priv: "{{ nextcloud_db_name }}.*:ALL"
|
||||||
|
# login_host: "{{ postgresql_host }}"
|
||||||
|
# login_port: "{{ postgresql_port }}"
|
||||||
|
# login_user: root
|
||||||
|
# login_password: "{{ postgresql_root_password }}"
|
||||||
|
|
||||||
|
- name: create nextcloud database
|
||||||
mysql_db:
|
mysql_db:
|
||||||
state: present
|
state: present
|
||||||
name: "{{ wordpress_db_name }}"
|
name: "{{ nextcloud_db_name }}"
|
||||||
login_host: "{{ mariadb_host }}"
|
login_host: "{{ mariadb_host }}"
|
||||||
login_port: "{{ mariadb_port }}"
|
login_port: "{{ mariadb_port }}"
|
||||||
login_user: root
|
login_user: root
|
||||||
login_password: "{{ mariadb_root_password }}"
|
login_password: "{{ mariadb_root_password }}"
|
||||||
|
|
||||||
- name: create wordpress db user
|
- name: create nextcloud db user
|
||||||
mysql_user:
|
mysql_user:
|
||||||
state: present
|
state: present
|
||||||
name: "{{ wordpress_db_user }}"
|
name: "{{ nextcloud_db_user }}"
|
||||||
host: "%"
|
host: "%"
|
||||||
password: "{{ wordpress_db_password }}"
|
password: "{{ nextcloud_db_password }}"
|
||||||
priv: "{{ wordpress_db_name }}.*:ALL"
|
priv: "{{ nextcloud_db_name }}.*:ALL"
|
||||||
login_host: "{{ mariadb_host }}"
|
login_host: "{{ mariadb_host }}"
|
||||||
login_port: "{{ mariadb_port }}"
|
login_port: "{{ mariadb_port }}"
|
||||||
login_user: root
|
login_user: root
|
||||||
login_password: "{{ mariadb_root_password }}"
|
login_password: "{{ mariadb_root_password }}"
|
||||||
|
|
||||||
- name: start wordpress container
|
- name: start nextcloud container
|
||||||
docker_container:
|
docker_container:
|
||||||
image: "{{ wordpress_image }}"
|
image: "{{ nextcloud_image }}"
|
||||||
name: "{{ wordpress_container }}"
|
name: "{{ nextcloud_container }}"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ wordpress_volume }}:/var/www/html"
|
- "{{ nextcloud_volume }}:/var/www/html"
|
||||||
env:
|
env:
|
||||||
WORDPRESS_DB_HOST: "{{ mariadb_container }}"
|
SQLITE_DATABASE:
|
||||||
WORDPRESS_DB_USER: "{{ wordpress_db_user }}"
|
"{{ nextcloud_db_name if nextcloud_db_engine == 'sqlite' else '' }}"
|
||||||
WORDPRESS_DB_PASSWORD: "{{ wordpress_db_password }}"
|
MYSQL_DATABASE:
|
||||||
WORDPRESS_DB_NAME: "{{ wordpress_db_name }}"
|
"{{ nextcloud_db_name if nextcloud_db_engine in ('mysql','mariadb') else '' }}"
|
||||||
WORDPRESS_TABLE_PREFIX: "{{ wordpress_table_prefix }}"
|
MYSQL_USER:
|
||||||
# (default to unique random SHA1s, but only if other environment
|
"{{ nextcloud_db_user if nextcloud_db_engine in ('mysql','mariadb') else '' }}"
|
||||||
# variable configuration is provided)
|
MYSQL_PASSWORD:
|
||||||
# WORDPRESS_AUTH_KEY:
|
"{{ nextcloud_db_password if nextcloud_db_engine in ('mysql','mariadb') else '' }}"
|
||||||
# WORDPRESS_SECURE_AUTH_KEY:
|
MYSQL_HOST:
|
||||||
# WORDPRESS_LOGGED_IN_KEY:
|
"{{ nextcloud_db_host if nextcloud_db_engine in ('mysql','mariadb') else '' }}"
|
||||||
# WORDPRESS_NONCE_KEY:
|
POSTGRES_DB:
|
||||||
# WORDPRESS_AUTH_SALT:
|
"{{ nextcloud_db_name if 'postgres' in nextcloud_db_engine else '' }}"
|
||||||
# WORDPRESS_SECURE_AUTH_SALT:
|
POSTGRES_USER:
|
||||||
# WORDPRESS_LOGGED_IN_SALT:
|
"{{ nextcloud_db_user if 'postgres' in nextcloud_db_engine else '' }}"
|
||||||
# WORDPRESS_NONCE_SALT:
|
POSTGRES_PASSWORD:
|
||||||
# (defaults to disabled, non-empty value will enable WP_DEBUG in
|
"{{ nextcloud_db_password if 'postgres' in nextcloud_db_engine else '' }}"
|
||||||
# wp-config.php)
|
POSTGRES_HOST:
|
||||||
WORDPRESS_DEBUG: "{{ wordpress_debug }}"
|
"{{ nextcloud_db_host if 'postgres' in nextcloud_db_engine else '' }}"
|
||||||
# (defaults to nothing, non-empty value will be embedded verbatim
|
NEXTCLOUD_TABLE_PREFIX: "{{ nextcloud_table_prefix }}"
|
||||||
# inside wp-config.php -- especially useful for applying extra
|
NEXTCLOUD_ADMIN_USER: "{{ nextcloud_admin_user }}"
|
||||||
# configuration values this image does not provide by default such
|
NEXTCLOUD_ADMIN_PASSWORD: "{{ nextcloud_admin_password }}"
|
||||||
# as WP_ALLOW_MULTISITE; see docker-library/wordpress#142 for more
|
NEXTCLOUD_TRUSTED_DOMAINS: "{{ nextcloud_trusted_domains }}"
|
||||||
# details)
|
NEXTCLOUD_UPDATE: "{{ nextcloud_update }}"
|
||||||
WORDPRESS_CONFIG_EXTRA: "{{ wordpress_config_extra }}"
|
REDIS_HOST: "{{ nextcloud_redis_host }}"
|
||||||
|
REDIS_HOST_PORT: "{{ nextcloud_redis_port }}"
|
||||||
|
SMTP_HOST: "{{ nextcloud_smtp_host }}"
|
||||||
|
SMTP_SECURE: "{{ nextcloud_smtp_secure }}"
|
||||||
|
SMTP_PORT: "{{ nextcloud_smtp_port }}"
|
||||||
|
SMTP_AUTHTYPE: "{{ nextcloud_smtp_authtype }}"
|
||||||
|
SMTP_NAME: "{{ nextcloud_smtp_user }}"
|
||||||
|
SMTP_PASSWORD: "{{ nextcloud_smtp_password }}"
|
||||||
|
MAIL_FROM_ADDRESS: "{{ nextcloud_mail_from_address }}"
|
||||||
|
MAIL_DOMAIN: "{{ nextcloud_mail_domain }}"
|
||||||
networks:
|
networks:
|
||||||
- name: "{{ docker_network_name }}"
|
- name: "{{ docker_network_name }}"
|
||||||
ports:
|
ports:
|
||||||
@ -58,24 +88,14 @@
|
|||||||
- name: template nginx config
|
- name: template nginx config
|
||||||
copy:
|
copy:
|
||||||
content: |
|
content: |
|
||||||
server {
|
|
||||||
listen 80; # para debug
|
|
||||||
listen 443 ssl;
|
|
||||||
server_name {{ wordpress_domain }};
|
|
||||||
|
|
||||||
# root /var/www/html;
|
location {{ nextcloud_web_root }} {
|
||||||
# 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 Host $host;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
proxy_pass http://{{ wordpress_container }};
|
proxy_pass http://{{ nextcloud_container }};
|
||||||
}
|
}
|
||||||
}
|
dest: "{{ nginx_location }}/nextcloud.conf"
|
||||||
dest: "{{ nginx_config_mountpoint }}/wordpress.conf"
|
|
||||||
register: ngconf
|
register: ngconf
|
||||||
|
|
||||||
- name: restart frontend
|
- name: restart frontend
|
||||||
@ -84,12 +104,12 @@
|
|||||||
restart: yes
|
restart: yes
|
||||||
when: ngconf is changed
|
when: ngconf is changed
|
||||||
|
|
||||||
- name: inspect wordpress volume
|
- name: inspect nextcloud volume
|
||||||
docker_volume_info:
|
docker_volume_info:
|
||||||
name: "{{ wordpress_volume }}"
|
name: "{{ nextcloud_volume }}"
|
||||||
register: volinfo
|
register: volinfo
|
||||||
|
|
||||||
- name: export variables
|
- name: export variables
|
||||||
set_fact:
|
set_fact:
|
||||||
wordpress_volume: "{{ lookup('vars','wordpress_volume') }}"
|
nextcloud_volume: "{{ lookup('vars','nextcloud_volume') }}"
|
||||||
wordpress_volume_mountpoint: "{{ volinfo.volume.Mountpoint }}"
|
nextcloud_volume_mountpoint: "{{ volinfo.volume.Mountpoint }}"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user