Compare commits

..

12 Commits

35 changed files with 161 additions and 114 deletions

View File

@ -1,52 +1,7 @@
# PASSWORDS AND SECRETS:
akaunting_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
akaunting_setup_admin_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
baserow_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_etherpad_api_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_fsesl_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_rails_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_shared_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_postgresql_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_turn_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
central_mariadb_root_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
central_postgres_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
discourse_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
gitlab_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
gitlab_initial_root_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
gitea_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
listmonk_admin_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
listmonk_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_api_token: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_initial_root_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_secret_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_otp_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_secret_key_base: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_vapid_private_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_vapid_public_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matomo_auth_token: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matomo_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_generic_secret_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_form_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_macaroon_secret_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_registration_shared_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
nextcloud_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
openproject_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
peertube_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
peertube_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
pixelfed_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
pixelfed_app_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
wordpress_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
yourls_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
yourls_user_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
# General
setup: false # Pass CLI commands to execute the setup tasks for the different roles
reset_files: false # Cleans up all CyMaIS files. It's necessary to run to whole playbook and not particial roles when using this function.
verbose: false # Prints well formated debug information
database_delay: "0" # Database delay to wait for the central database before continue tasks
top_domain: "localhost" # Change this in inventory to your domain
ip4_address: "127.0.0.1" # Change thie in inventory to the ip address of your server
backups_folder_path: "/Backups/" # Path to the backups folder
@ -148,6 +103,13 @@ nginx_upstreams_directory: "{{nginx_configuration_directory}}upstreams/"
## Docker Applications
### Enable Setup
setup_default: "false" # Pass CLI commands to execute the setup tasks for the different roles
setup_akaunting: "{{setup_default}}"
setup_mailu: "{{setup_default}}"
setup_listmonk: "{{setup_default}}"
setup_mastodon: "{{setup_default}}"
### Enable Central MariaDB
enable_central_database: true

48
inventory.example.yml Normal file
View File

@ -0,0 +1,48 @@
# THIS INVENTORY IS AN EXAMPLE INVENTORY.
# You should change all of the variables in here.
# Addidiotnally feel free to overwrite configuration variables of group_vars/all in the enventory
# PASSWORDS AND SECRETS:
akaunting_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
akaunting_setup_admin_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
baserow_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_etherpad_api_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_fsesl_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_rails_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_shared_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_postgresql_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
bigbluebutton_turn_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
central_mariadb_root_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
central_postgres_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
discourse_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
gitlab_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
gitlab_initial_root_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
gitea_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
listmonk_admin_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
listmonk_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_api_token: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_initial_root_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mailu_secret_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_otp_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_secret_key_base: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_vapid_private_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
mastodon_vapid_public_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matomo_auth_token: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matomo_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_generic_secret_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_form_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_macaroon_secret_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
matrix_registration_shared_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
nextcloud_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
openproject_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
peertube_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
peertube_secret: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
pixelfed_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
pixelfed_app_key: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
wordpress_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
yourls_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
yourls_user_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"

View File

@ -1,8 +1,9 @@
- name: install pandas system wide
- name: install required software
community.general.pacman:
name:
- lsof
- python-pandas
- jq
state: present
when: run_once_backup_docker_to_local is not defined
@ -40,13 +41,19 @@
on_calendar: "{{on_calendar_backup_docker_to_local}}"
when: run_once_backup_docker_to_local is not defined
- name: "reset {{ backup_docker_to_local_folder }}databases.csv"
file:
path: "{{ backup_docker_to_local_folder }}databases.csv"
state: absent
when: reset_files | bool and run_once_backup_docker_to_local is not defined
- name: seed database values
command:
cmd: "python database_entry_seeder.py databases.csv {{docker_compose_project_name}} {{database_host}} {{database_databasename}} {{database_username}} {{database_password}}"
cmd: "python database_entry_seeder.py databases.csv {{database_instance}} {{database_name}} {{database_username}} {{database_password}}"
chdir: "{{backup_docker_to_local_folder}}"
when: >
database_host is defined or
database_databasename is defined or
database_name is defined or
database_username is defined or
database_password is defined
@ -58,7 +65,7 @@
group: root
when: >
(database_host is defined or
database_databasename is defined or
database_name is defined or
database_username is defined or
database_password is defined) and
run_once_backup_docker_to_local_file_permission is not defined

View File

@ -6,7 +6,7 @@ LOCALE=en-US
DB_HOST={{database_host}}
# Change these to match env/db.env
DB_DATABASE={{database_databasename}}
DB_DATABASE={{database_name}}
DB_USERNAME={{database_username}}
DB_PASSWORD={{database_password}}

View File

@ -6,8 +6,9 @@ services:
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
baserow:
application:
image: baserow/baserow:1.19.1
container_name: baserow-application
restart: always
logging:
driver: journald
@ -17,8 +18,13 @@ services:
- data:/baserow/data
ports:
- "{{http_port}}:80"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/"]
interval: 1m
timeout: 10s
retries: 3
{% include 'templates/docker-container-networks.yml.j2' %}
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
{% include 'templates/docker-compose-volumes.yml.j2' %}
data:

View File

@ -10,11 +10,9 @@ EMAIL_SMTP_PASSWORD={{ system_email_password }}
EMAIL_SMTP_USE_TLS={{ system_email_tls | upper }}
DATABASE_USER={{ database_username }}
DATABASE_NAME={{ database_databasename }}
DATABASE_NAME={{ database_name }}
DATABASE_HOST={{ database_host }}
DATABASE_PORT=5432
DATABASE_PASSWORD={{ database_password }}
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_URL=redis://redis:6379

View File

@ -1,6 +1,6 @@
docker_compose_project_name: "bigbluebutton"
database_host: "postgres" # needs to be fixed
database_databasename: "greenlight-v3"
database_name: "greenlight-v3"
database_username: "postgres"
database_password: ""
database_type: "postgres"

View File

@ -67,7 +67,7 @@ env:
DISCOURSE_DB_USERNAME: {{ database_username }}
DISCOURSE_DB_PASSWORD: {{ database_password }}
DISCOURSE_DB_HOST: {{ database_host }}
DISCOURSE_DB_NAME: {{ database_databasename }}
DISCOURSE_DB_NAME: {{ database_name }}
# Redis Configuration
DISCOURSE_REDIS_HOST: {{docker_compose_project_name}}-redis

View File

@ -14,7 +14,7 @@ services:
- USER_GID=1000
- DB_TYPE=mysql
- DB_HOST={{database_host}}:3306
- DB_NAME={{database_databasename}}
- DB_NAME={{database_name}}
- DB_USER={{database_username}}
- DB_PASSWD={{database_password}}
- SSH_PORT={{ssh_port}}
@ -30,6 +30,11 @@ services:
- data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
healthcheck:
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 1m
timeout: 10s
retries: 3
{% include 'templates/docker-container-networks.yml.j2' %}
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}

View File

@ -16,7 +16,7 @@ This Ansible role is designed for setting up and managing a GitLab server runnin
## Role Variables
Variables are defined in `vars/main.yml`. Key variables include:
- `docker_compose_instance_directory`: Directory for Docker Compose instances.
- `docker_compose_project_name`, `database_host`, `database_databasename`, `database_username`, `database_password`: Database configuration variables.
- `docker_compose_project_name`, `database_host`, `database_name`, `database_username`, `database_password`: Database configuration variables.
## Handlers
- `recreate gitlab`: Restarts GitLab using Docker Compose when changes are detected.

View File

@ -20,7 +20,7 @@ services:
gitlab_rails['db_port'] = 5432
gitlab_rails['db_username'] = '{{database_username}}'
gitlab_rails['db_password'] = '{{database_password}}'
gitlab_rails['db_database'] = "{{database_databasename}}"
gitlab_rails['db_database'] = "{{database_name}}"
nginx['listen_port'] = 80
nginx['listen_https'] = false

View File

@ -12,7 +12,7 @@ services:
JOOMLA_DB_HOST: "{{database_host}}:3306"
JOOMLA_DB_USER: "{{database_username}}"
JOOMLA_DB_PASSWORD: "{{database_password}}"
JOOMLA_DB_NAME: "{{database_databasename}}"
JOOMLA_DB_NAME: "{{database_name}}"
restart: always
volumes:
- data:/var/www/html

View File

@ -29,6 +29,6 @@
- name: setup routine for listmonk
command:
cmd: "yes | docker compose run -T --rm application ./listmonk --install"
cmd: docker compose run -T --rm application sh -c "yes | ./listmonk --install"
chdir: "{{docker_compose_instance_directory}}"
when: setup | bool

View File

@ -20,7 +20,7 @@ user = "{{database_username}}"
password = "{{database_password}}"
# Ensure that this database has been created in Postgres.
database = "{{database_databasename}}"
database = "{{database_name}}"
ssl_mode = "disable"
max_open = 25

View File

@ -66,6 +66,14 @@
meta: flush_handlers
when: setup | bool
- name: wait for database
wait_for:
host: 127.0.0.1
port: "{{ http_port }}"
delay: "{{database_delay}}"
timeout: 300
when: setup | bool
- name: execute database migration
command:
cmd: "docker compose -p mailu exec admin flask mailu admin admin {{top_domain}} {{mailu_initial_root_password}}"

View File

@ -143,11 +143,11 @@ DB_FLAVOR=mysql
DB_USER={{database_username}}
DB_PW={{database_password}}
DB_HOST={{database_host}}:3306
DB_NAME={{database_databasename}}
DB_NAME={{database_name}}
ROUNDCUBE_DB_FLAVOR=mysql
ROUNDCUBE_DB_USER={{database_username}}
ROUNDCUBE_DB_PW={{database_password}}
ROUNDCUBE_DB_NAME={{database_databasename}}
ROUNDCUBE_DB_NAME={{database_name}}
ROUNDCUBE_DB_HOST={{database_host}}:3306

View File

@ -19,7 +19,7 @@ Before using this role, ensure you have the following:
## Configuration
Configure the role by setting the required variables. These can be set in the playbook or in a separate variable file:
- `central_mariadb_root_password`: The root password for the MariaDB server.
- `database_databasename`: The name of the initial database to create.
- `database_name`: The name of the initial database to create.
- `database_username`: The username for the database user.
- `database_password`: The password for the database user.

View File

@ -42,13 +42,13 @@
wait_for:
host: 127.0.0.1
port: 3306
delay: 10
delay: "{{database_delay}}"
timeout: 300
when: run_once_docker_mariadb is not defined
- name: "Create database: {{ database_databasename }}"
- name: "Create database: {{ database_name }}"
mysql_db:
name: "{{ database_databasename }}"
name: "{{ database_name }}"
state: present
login_user: root
login_password: "{{ central_mariadb_root_password }}"
@ -60,7 +60,7 @@
name: "{{database_username}}"
password: "{{database_password}}"
host: "%"
priv: '{{database_databasename}}.*:ALL'
priv: '{{database_name}}.*:ALL'
state: present
login_user: root
login_password: "{{central_mariadb_root_password}}"

View File

@ -8,7 +8,7 @@ VAPID_PUBLIC_KEY={{mastodon_vapid_public_key}}
DB_HOST={{database_host}}
DB_PORT=5432
DB_NAME={{database_databasename}}
DB_NAME={{database_name}}
DB_USER={{database_username}}
DB_PASS={{database_password}}

View File

@ -16,7 +16,7 @@ services:
MATOMO_DATABASE_ADAPTER: "mysql"
MATOMO_DATABASE_USERNAME: "{{database_username}}"
MATOMO_DATABASE_PASSWORD: "{{database_password}}"
MATOMO_DATABASE_DBNAME: "{{database_databasename}}"
MATOMO_DATABASE_DBNAME: "{{database_name}}"
volumes:
- data:/var/www/html
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}

View File

@ -13,7 +13,7 @@ database:
args:
user: "{{database_username}}"
password: "{{database_password}}"
database: "{{database_databasename}}"
database: "{{database_name}}"
host: "{{database_host}}"
cp_min: 5
cp_max: 10

View File

@ -14,7 +14,7 @@ services:
volumes:
- data:/var/www/html
environment:
MYSQL_DATABASE: "{{database_databasename}}"
MYSQL_DATABASE: "{{database_name}}"
MYSQL_USER: "{{database_username}}"
MYSQL_PASSWORD: "{{database_password}}"
MYSQL_HOST: {{database_host}}:3306
@ -32,6 +32,11 @@ services:
- "{{path_docker_volumes}}nextcloud/nginx.conf:/etc/nginx/nginx.conf:ro"
volumes_from:
- application
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/"]
interval: 1m
timeout: 10s
retries: 3
{% include 'templates/docker-container-networks.yml.j2' %}
cron:

View File

@ -13,6 +13,6 @@ PORT=127.0.0.1:{{http_port}}
OPENPROJECT_RAILS__RELATIVE__URL__ROOT=
IMAP_ENABLED=false
POSTGRES_PASSWORD="{{ database_password }}"
DATABASE_URL="postgres://{{ database_username }}:{{ database_password }}@{{database_host}}/{{database_databasename}}?pool=20&encoding=unicode&reconnect=true"
DATABASE_URL="postgres://{{ database_username }}:{{ database_password }}@{{database_host}}/{{database_name}}?pool=20&encoding=unicode&reconnect=true"
RAILS_MIN_THREADS=4
RAILS_MAX_THREADS=16

View File

@ -1,7 +1,7 @@
# Database / Postgres service configuration
POSTGRES_USER={{database_username}}
POSTGRES_PASSWORD={{peertube_database_password}}
POSTGRES_DB={{database_databasename}}
POSTGRES_DB={{database_name}}
PEERTUBE_DB_USERNAME={{database_username}}
PEERTUBE_DB_PASSWORD={{peertube_database_password}}
PEERTUBE_DB_SSL=false

View File

@ -1,3 +1,3 @@
docker_compose_project_name: "peertube"
database_type: "mariadb"
database_type: "postgres"
database_password: "{{peertube_database_password}}"

View File

@ -56,7 +56,7 @@ MAIL_ENCRYPTION=tls
## Databases (MySQL)
DB_CONNECTION=mysql
DB_DATABASE={{database_databasename}}
DB_DATABASE={{database_name}}
DB_HOST={{database_host}}
DB_PASSWORD="{{pixelfed_database_password}}"
DB_PORT=3306

View File

@ -5,7 +5,7 @@ This Ansible role is designed to deploy a PostgreSQL database using Docker. It i
## Role Variables
- `central_postgres_password`: The password for the PostgreSQL superuser (`postgres`).
- `database_databasename`: Name of the database to be created.
- `database_name`: Name of the database to be created.
- `database_username`: Username for the database user.
- `database_password`: Password for the database user.

View File

@ -31,7 +31,7 @@
wait_for:
host: "127.0.0.1"
port: "5432"
delay: 0
delay: "{{database_delay}}"
timeout: 300
when: run_once_docker_postgres is not defined
@ -41,9 +41,9 @@
state: present
when: run_once_docker_postgres is not defined
- name: "Create database: {{ database_databasename }}"
- name: "Create database: {{ database_name }}"
postgresql_db:
name: "{{ database_databasename }}"
name: "{{ database_name }}"
state: present
login_user: postgres
login_password: "{{ central_postgres_password }}"
@ -54,7 +54,7 @@
postgresql_user:
name: "{{ database_username }}"
password: "{{ database_password }}"
db: "{{ database_databasename }}"
db: "{{ database_name }}"
state: present
login_user: postgres
login_password: "{{ central_postgres_password }}"
@ -63,7 +63,7 @@
- name: "Set privileges for database user: {{ database_username }}"
postgresql_privs:
db: "{{ database_databasename }}"
db: "{{ database_name }}"
role: "{{ database_username }}"
objs: ALL_IN_SCHEMA
privs: ALL
@ -76,7 +76,7 @@
- name: Grant all privileges at the database level
postgresql_privs:
db: "{{ database_databasename }}"
db: "{{ database_name }}"
role: "{{ database_username }}"
privs: ALL
type: database
@ -88,7 +88,7 @@
- name: Grant all privileges on all tables in the public schema
postgresql_privs:
db: "{{ database_databasename }}"
db: "{{ database_name }}"
role: "{{ database_username }}"
objs: ALL_IN_SCHEMA
privs: ALL
@ -102,7 +102,7 @@
- name: Set comprehensive privileges for user on public schema
postgresql_query:
db: "{{ database_databasename }}"
db: "{{ database_name }}"
login_user: postgres
login_password: "{{ central_postgres_password }}"
login_host: 127.0.0.1

View File

@ -14,9 +14,14 @@ services:
WORDPRESS_DB_HOST: "{{database_host}}:3306"
WORDPRESS_DB_USER: "{{database_username}}"
WORDPRESS_DB_PASSWORD: "{{database_password}}"
WORDPRESS_DB_NAME: "{{database_databasename}}"
WORDPRESS_DB_NAME: "{{database_name}}"
volumes:
- data:/var/www/html
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/"]
interval: 1m
timeout: 10s
retries: 3
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
{% include 'templates/docker-container-networks.yml.j2' %}

View File

@ -15,10 +15,15 @@ services:
YOURLS_DB_HOST: "{{database_host}}"
YOURLS_DB_USER: "{{database_username}}"
YOURLS_DB_PASS: "{{database_password}}"
YOURLS_DB_NAME: "{{database_databasename}}"
YOURLS_DB_NAME: "{{database_name}}"
YOURLS_SITE: "https://{{domain}}"
YOURLS_USER: "{{yourls_user}}"
YOURLS_PASS: "{{yourls_user_password}}"
healthcheck:
test: ["CMD", "curl", "-f", "http://127.0.0.1/admin/"]
interval: 1m
timeout: 10s
retries: 3
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
{% include 'templates/docker-container-networks.yml.j2' %}

View File

@ -8,15 +8,9 @@
dest: "{{nginx_servers_directory}}{{domain}}.conf"
notify: restart nginx
- name: nginx-homepage repo git
- name: "pull homepage from {{nginx_homepage_repository_address}}"
git:
repo: "{{nginx_homepage_repository_address}}"
dest: "{{nginx_homepage_root}}"
update: yes
register: git_result
ignore_errors: true
- name: Warn if repo is not reachable
debug:
msg: "Warning: Repository is not reachable."
when: git_result.failed

View File

@ -77,6 +77,7 @@
vars:
domain: "{{domain_mailu}}"
http_port: 8007
setup: "{{ setup_mailu }}"
- name: setup elk hosts
hosts: elk
@ -97,6 +98,7 @@
domains: "{{ [domain] + domains_mastodon_alternates }}"
http_port: 8009
stream_port: 4001
setup: "{{ setup_mastodon }}"
- name: setup pixelfed hosts
hosts: pixelfed
@ -188,6 +190,7 @@
vars:
domain: "{{domain_listmonk}}"
http_port: 8019
setup: "{{ setup_listmonk }}"
- name: setup discourse
hosts: discourse
@ -246,6 +249,7 @@
vars:
domain: "{{domain_akaunting}}"
http_port: 8025
setup: "{{ setup_akaunting }}"
# Native Webserver Roles
- name: setup nginx-homepages

View File

@ -7,7 +7,7 @@
image: mariadb
restart: always
environment:
MYSQL_DATABASE: "{{database_databasename}}"
MYSQL_DATABASE: "{{database_name}}"
MYSQL_USER: "{{database_username}}"
MYSQL_PASSWORD: "{{database_password}}"
MYSQL_ROOT_PASSWORD: "{{database_password}}"

View File

@ -6,11 +6,11 @@
environment:
- POSTGRES_PASSWORD={{database_password}}
- POSTGRES_USER={{database_username}}
- POSTGRES_DB={{database_databasename}}
- POSTGRES_DB={{database_name}}
- POSTGRES_INITDB_ARGS="--encoding=UTF8 --locale=C"
restart: always
healthcheck:
test: ["CMD-SHELL", "pg_isready -U {{database_databasename}}"]
test: ["CMD-SHELL", "pg_isready -U {{database_name}}"]
interval: 10s
timeout: 5s
retries: 6

View File

@ -1,6 +1,6 @@
docker_compose_instance_directory: "{{ path_docker_compose_instances + docker_compose_project_name + '/' }}"
database_instance: "{{ 'central-' + database_type if enable_central_database else docker_compose_project_name }}"
database_host: "{{ 'central-' + database_type if enable_central_database else 'database' }}"
database_databasename: "{{ docker_compose_project_name }}"
database_name: "{{ docker_compose_project_name }}"
database_username: "{{ docker_compose_project_name }}"
database_version: "{{ postgres_default_version }}"
# This will lead to problems with bbb and openproject