mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2024-11-26 22:51:05 +01:00
Compare commits
3 Commits
0aebca62f6
...
722c017088
Author | SHA1 | Date | |
---|---|---|---|
722c017088 | |||
b5af98525a | |||
c4209f0559 |
@ -170,9 +170,10 @@ version_mastodon: "latest"
|
||||
mastodon_single_user_mode: false
|
||||
|
||||
#### Matrix
|
||||
matrix_admin_name: "admin" # Accountname of the matrix admin
|
||||
matrix_playbook_tags: "setup-all,start" # For the initial update use: install-all,ensure-matrix-users-created,start
|
||||
matrix_role: "compose" # Role to setup Matrix. Valid values: ansible, compose
|
||||
matrix_admin_name: "admin"
|
||||
matrix_server_name: "{{top_domain}}" # Adress for the account names etc.
|
||||
|
||||
#### Mailu
|
||||
version_mailu: "2.0"
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: '3.7'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
image: docker.io/akaunting/akaunting:{{version_akaunting}}
|
||||
@ -17,10 +17,10 @@ services:
|
||||
- env/run.env
|
||||
environment:
|
||||
- AKAUNTING_SETUP
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
docker_compose_project_name: "akaunting"
|
||||
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
|
||||
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose-backup.yml"
|
||||
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker/compose/backup.yml"
|
||||
database_type: "mariadb"
|
||||
database_password: "{{akaunting_database_password}}"
|
||||
repository_address: "https://github.com/akaunting/docker.git"
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks to receive attendize certbot certificate"
|
||||
include_tasks: recieve-certbot-certificate.yml
|
||||
|
@ -1,9 +1,9 @@
|
||||
version: '3.2'
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
web:
|
||||
image: attendize_web:latest
|
||||
@ -12,18 +12,18 @@ services:
|
||||
volumes:
|
||||
- .:/usr/share/nginx/html
|
||||
- .:/var/www
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
maildev:
|
||||
worker:
|
||||
env_file:
|
||||
- ./.env
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
worker:
|
||||
image: attendize_worker:latest
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
maildev:
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
volumes:
|
||||
- .:/usr/share/nginx/html
|
||||
- .:/var/www
|
||||
@ -32,10 +32,10 @@ services:
|
||||
image: maildev/maildev
|
||||
ports:
|
||||
- "{{ mail_interface_http_port }}:1080"
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
redis:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
docker_compose_project_name: "attendize"
|
||||
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
|
||||
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose-backup.yml"
|
||||
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker/compose/backup.yml"
|
||||
mail_interface_domain: "mail.{{domain}}"
|
||||
database_type: "mariadb"
|
||||
database_password: "{{attendize_database_password}}"
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,9 +2,9 @@ version: '2'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
image: baserow/baserow:1.19.1
|
||||
@ -23,11 +23,11 @@ services:
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
redis:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-common.yml"
|
||||
include_tasks: docker-compose-common.yml
|
||||
- name: "include docker/compose/common.yml"
|
||||
include_tasks: docker/compose/common.yml
|
||||
|
||||
- name: "include task certbot-matomo.yml"
|
||||
include_tasks: certbot-matomo.yml
|
||||
|
@ -6,8 +6,8 @@
|
||||
name: which
|
||||
state: present
|
||||
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,11 +2,11 @@ version: '3.8'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
redis:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: "3"
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
celeryworker:
|
||||
restart: {{docker_restart_policy}}
|
||||
@ -13,8 +13,8 @@ services:
|
||||
- C_FORCE_ROOT=true
|
||||
volumes:
|
||||
- "data:${MEDIA_ROOT}"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
|
||||
celerybeat:
|
||||
@ -22,8 +22,8 @@ services:
|
||||
image: funkwhale/api:${FUNKWHALE_VERSION:-latest}
|
||||
env_file: .env
|
||||
command: celery -A funkwhale_api.taskapp beat --pidfile= -l INFO
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
api:
|
||||
restart: {{docker_restart_policy}}
|
||||
@ -35,8 +35,8 @@ services:
|
||||
#- "${STATIC_ROOT}:${STATIC_ROOT}"
|
||||
ports:
|
||||
- "5000"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
front:
|
||||
restart: {{docker_restart_policy}}
|
||||
@ -54,10 +54,10 @@ services:
|
||||
ports:
|
||||
# override those variables in your .env file if needed
|
||||
- "${FUNKWHALE_API_IP}:${FUNKWHALE_API_PORT}:80"
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
redis:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: '3'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
logging:
|
||||
@ -35,10 +35,10 @@ services:
|
||||
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/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -1,9 +1,9 @@
|
||||
version: '3.6'
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
web:
|
||||
image: 'gitlab/gitlab-ee:latest'
|
||||
@ -37,12 +37,12 @@ services:
|
||||
- 'logs:/var/log/gitlab'
|
||||
- 'data:/var/opt/gitlab'
|
||||
shm_size: '256m'
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
redis:
|
||||
config:
|
||||
logs:
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: '3'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
image: joomla
|
||||
@ -18,10 +18,10 @@ services:
|
||||
- data:/var/www/html
|
||||
ports:
|
||||
- "127.0.0.1:{{http_port}}:80"
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
@ -3,3 +3,4 @@ Draft role for an LDAP implementation with sso.
|
||||
## See
|
||||
- [ChatGPT Conversation](https://chat.openai.com/share/77919994-5d44-4a64-877d-b572d67483d4)
|
||||
- [Discouse Documentation](https://forum.veen.world/t/cymais-ldap-implementierung-documentation/49)
|
||||
- [Setup Guide](https://goneuland.de/ldap-nextcloud-und-mailserver-in-docker/)
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: "3.7"
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
restart: {{docker_restart_policy}}
|
||||
@ -13,9 +13,9 @@ services:
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
- ./config.toml:/listmonk/config.toml
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes-just-database.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,16 +2,16 @@ version: '2.2'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
# Core services
|
||||
resolver:
|
||||
image: ghcr.io/mailu/unbound:{{version_mailu}}
|
||||
env_file: mailu.env
|
||||
restart: {{docker_restart_policy}}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
ipv4_address: 192.168.203.254
|
||||
logging:
|
||||
driver: journald
|
||||
@ -34,10 +34,10 @@ services:
|
||||
volumes:
|
||||
- "/etc/mailu/overrides/nginx:/overrides:ro"
|
||||
- "/etc/mailu/certs:/certs"
|
||||
{% include 'templates/docker-container-depends-on-also-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-also-database.yml.j2' %}
|
||||
resolver:
|
||||
condition: service_started
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
webmail:
|
||||
radicale:
|
||||
dns:
|
||||
@ -50,7 +50,7 @@ services:
|
||||
volumes:
|
||||
- "admin_data:/data"
|
||||
- "dkim:/dkim"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
resolver:
|
||||
condition: service_started
|
||||
front:
|
||||
@ -59,7 +59,7 @@ services:
|
||||
driver: journald
|
||||
dns:
|
||||
- 192.168.203.254
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
imap:
|
||||
image: ghcr.io/mailu/dovecot:{{version_mailu}}
|
||||
@ -75,7 +75,7 @@ services:
|
||||
- 192.168.203.254
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
smtp:
|
||||
image: ghcr.io/mailu/postfix:{{version_mailu}}
|
||||
@ -91,7 +91,7 @@ services:
|
||||
- 192.168.203.254
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
oletools:
|
||||
image: ghcr.io/mailu/oletools:{{version_mailu}}
|
||||
@ -101,7 +101,7 @@ services:
|
||||
- resolver
|
||||
dns:
|
||||
- 192.168.203.254
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
noinet:
|
||||
|
||||
antispam:
|
||||
@ -121,7 +121,7 @@ services:
|
||||
- 192.168.203.254
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
noinet:
|
||||
|
||||
|
||||
@ -138,7 +138,7 @@ services:
|
||||
- 192.168.203.254
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
webdav:
|
||||
image: ghcr.io/mailu/radicale:{{version_mailu}}
|
||||
@ -152,7 +152,7 @@ services:
|
||||
- resolver
|
||||
dns:
|
||||
- 192.168.203.254
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
radicale:
|
||||
|
||||
fetchmail:
|
||||
@ -170,7 +170,7 @@ services:
|
||||
- resolver
|
||||
dns:
|
||||
- 192.168.203.254
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
webmail:
|
||||
image: ghcr.io/mailu/webmail:{{version_mailu}}
|
||||
@ -187,10 +187,10 @@ services:
|
||||
driver: journald
|
||||
dns:
|
||||
- 192.168.203.254
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
webmail:
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
smtp_queue:
|
||||
admin_data:
|
||||
webdav_data:
|
||||
@ -200,7 +200,7 @@ services:
|
||||
dovecot_mail:
|
||||
redis:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
driver: bridge
|
||||
ipam:
|
||||
driver: default
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include create-domains.yml"
|
||||
include_tasks: create-domains.yml
|
||||
|
@ -1,9 +1,9 @@
|
||||
version: '3'
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
web:
|
||||
image: ghcr.io/mastodon/mastodon:{{version_mastodon}}
|
||||
@ -14,12 +14,12 @@ services:
|
||||
test: ['CMD-SHELL', 'wget -q --spider --proxy=off localhost:3000/health || exit 1']
|
||||
ports:
|
||||
- "127.0.0.1:{{http_port}}:3000"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
volumes:
|
||||
- data:/mastodon/public/system
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
streaming:
|
||||
image: ghcr.io/mastodon/mastodon:{{version_mastodon}}
|
||||
@ -30,27 +30,27 @@ services:
|
||||
test: ['CMD-SHELL', 'wget -q --spider --proxy=off localhost:4000/api/v1/streaming/health || exit 1']
|
||||
ports:
|
||||
- "127.0.0.1:{{stream_port}}:4000"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
sidekiq:
|
||||
image: ghcr.io/mastodon/mastodon:{{version_mastodon}}
|
||||
restart: {{docker_restart_policy}}
|
||||
env_file: .env.production
|
||||
command: bundle exec sidekiq
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
volumes:
|
||||
- data:/mastodon/public/system
|
||||
healthcheck:
|
||||
test: ['CMD-SHELL', "ps aux | grep '[s]idekiq\ 6' || false"]
|
||||
logging:
|
||||
driver: journald
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
redis:
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: '3'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
logging:
|
||||
@ -19,10 +19,10 @@ services:
|
||||
MATOMO_DATABASE_DBNAME: "{{database_name}}"
|
||||
volumes:
|
||||
- data:/var/www/html
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
@ -35,6 +35,14 @@ Matrix is an open-source project that provides a protocol for secure, decentrali
|
||||
docker-compose logs
|
||||
```
|
||||
|
||||
## Cleanup
|
||||
```
|
||||
# Cleanup Database
|
||||
for db in matrix mautrix_whatsapp_bridge mautrix_telegram_bridge mautrix_signal_bridge mautrix_slack_bridge; do python reset-database-in-central-postgres.py $db; done
|
||||
# Cleanup Docker and Volumes
|
||||
docker compose down -v
|
||||
```
|
||||
|
||||
## Debug:
|
||||
- https://federationtester.matrix.org/
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include task certbot-matomo.yml"
|
||||
include_tasks: certbot-matomo.yml
|
||||
@ -50,15 +50,9 @@
|
||||
|
||||
- name: "cleanup project folder"
|
||||
file:
|
||||
path: "{{docker_compose_instance_directory}}"
|
||||
path: "{{docker_compose_instance_directory}}mautrix/"
|
||||
state: absent
|
||||
|
||||
- name: "create registrations folder"
|
||||
file:
|
||||
path: "{{docker_compose_instance_directory}}registrations"
|
||||
state: directory
|
||||
mode: 0755
|
||||
|
||||
- name: "create bridge folders"
|
||||
file:
|
||||
path: "{{docker_compose_instance_directory}}mautrix/{{item.bridge_name}}"
|
||||
@ -70,7 +64,6 @@
|
||||
template:
|
||||
src: "mautrix/{{item.bridge_name}}.config.yml.j2"
|
||||
dest: "{{docker_compose_instance_directory}}mautrix/{{item.bridge_name}}/config.yaml"
|
||||
notify: docker compose project setup
|
||||
loop: "{{ bridges }}"
|
||||
notify: docker compose project setup
|
||||
|
||||
@ -113,14 +106,15 @@
|
||||
timeout: 120
|
||||
loop: "{{ bridges }}"
|
||||
|
||||
- name: move registration files
|
||||
command:
|
||||
cmd: mv {{docker_compose_instance_directory}}mautrix/{{item.bridge_name}}/registration.yaml {{docker_compose_instance_directory}}registrations/{{item.bridge_name}}.registration.yaml
|
||||
chdir: "{{ docker_compose_instance_directory }}"
|
||||
loop: "{{ bridges }}"
|
||||
|
||||
- name: "change file permissions"
|
||||
file:
|
||||
path: "{{docker_compose_instance_directory}}registrations/{{item.bridge_name}}.registration.yaml"
|
||||
path: "{{docker_compose_instance_directory}}mautrix/{{item.bridge_name}}/registration.yaml"
|
||||
mode: 0755
|
||||
loop: "{{ bridges }}"
|
||||
|
||||
- name: create admin account
|
||||
command:
|
||||
cmd: docker compose exec -it synapse register_new_matrix_user -u {{matrix_admin_name}} -p {{matrix_admin_password}} -a -c /data/homeserver.yaml http://localhost:8008
|
||||
chdir: "{{ docker_compose_instance_directory }}"
|
||||
ignore_errors: true
|
||||
when: mode_setup | bool
|
@ -2,7 +2,7 @@ version: '3.1'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
synapse:
|
||||
image: matrixdotorg/synapse:latest
|
||||
@ -14,14 +14,27 @@ services:
|
||||
- synapse_data:/data
|
||||
- ./homeserver.yaml:/data/homeserver.yaml:ro
|
||||
- ./{{synapse_domain}}.log.config:/data/{{synapse_domain}}.log.config:ro
|
||||
- ./registrations:{{registration_file_folder}}
|
||||
{% for item in bridges %}
|
||||
- {{docker_compose_instance_directory}}mautrix/{{item.bridge_name}}/registration.yaml:{{registration_file_folder}}{{item.bridge_name}}.registration.yaml:ro
|
||||
{% endfor %}
|
||||
environment:
|
||||
- SYNAPSE_SERVER_NAME={{synapse_domain}}
|
||||
- SYNAPSE_REPORT_STATS=no
|
||||
ports:
|
||||
- "127.0.0.1:{{synapse_http_port}}:8008"
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8008/"]
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
{% include 'templates/docker/container/depends-on-also-database.yml.j2' %}
|
||||
{% for item in bridges %}
|
||||
mautrix-{{item.bridge_name}}:
|
||||
# The condition service_healthy does not work.
|
||||
# In practice is does not make a difference anyhow, due to the reason that synapse will restart until it is running
|
||||
condition: service_started
|
||||
{% endfor %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
element:
|
||||
image: vectorim/element-web:latest
|
||||
@ -31,7 +44,12 @@ services:
|
||||
- ./element-config.json:/app/config.json
|
||||
ports:
|
||||
- "127.0.0.1:{{element_http_port}}:80"
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--spider", "-q", "http://localhost:80/"]
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% for item in bridges %}
|
||||
mautrix-{{item.bridge_name}}:
|
||||
@ -40,12 +58,15 @@ services:
|
||||
restart: {{docker_restart_policy}}
|
||||
volumes:
|
||||
- ./mautrix/{{item.bridge_name}}:/data
|
||||
- ./registrations:{{registration_file_folder}}
|
||||
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "test -f {{registration_file_folder}}registration.yaml || exit 1"]
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% endfor %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
synapse_data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -3,7 +3,7 @@ homeserver:
|
||||
# The address that this appservice can use to connect to the homeserver.
|
||||
address: http://synapse:8008
|
||||
# The domain of the homeserver (also known as server_name, used for MXIDs, etc).
|
||||
domain: {{synapse_domain}}
|
||||
domain: {{matrix_server_name}}
|
||||
|
||||
# What software is the homeserver running?
|
||||
# Standard Matrix homeservers like Synapse, Dendrite and Conduit should just use "standard" here.
|
||||
@ -141,7 +141,7 @@ bridge:
|
||||
federate_rooms: true
|
||||
# Servers to always allow double puppeting from
|
||||
double_puppet_server_map:
|
||||
{{synapse_domain}}: https://{{synapse_domain}}
|
||||
{{matrix_server_name}}: https://{{matrix_server_name}}
|
||||
# Allow using double puppeting from any server with a valid client .well-known file.
|
||||
double_puppet_allow_discovery: false
|
||||
# Shared secrets for https://github.com/devture/matrix-synapse-shared-secret-auth
|
||||
@ -150,7 +150,7 @@ bridge:
|
||||
# instead of users having to find an access token and run `login-matrix`
|
||||
# manually.
|
||||
login_shared_secret_map:
|
||||
{{synapse_domain}}: foobar
|
||||
{{matrix_server_name}}: foobar
|
||||
|
||||
# Maximum time for handling Matrix events. Duration strings formatted for https://pkg.go.dev/time#ParseDuration
|
||||
# Null means there's no enforced timeout.
|
||||
@ -274,8 +274,8 @@ bridge:
|
||||
# mxid - Specific user
|
||||
permissions:
|
||||
"*": relay
|
||||
"{{synapse_domain}}": user
|
||||
"@{{matrix_admin_name}}:{{synapse_domain}}": admin
|
||||
"{{matrix_server_name}}": user
|
||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
||||
|
||||
# Settings for relay mode
|
||||
relay:
|
||||
|
@ -3,7 +3,7 @@ homeserver:
|
||||
# The address that this appservice can use to connect to the homeserver.
|
||||
address: http://synapse:8008
|
||||
# The domain of the homeserver (also known as server_name, used for MXIDs, etc).
|
||||
domain: {{synapse_domain}}
|
||||
domain: {{matrix_server_name}}
|
||||
|
||||
# What software is the homeserver running?
|
||||
# Standard Matrix homeservers like Synapse, Dendrite and Conduit should just use "standard" here.
|
||||
@ -118,7 +118,7 @@ bridge:
|
||||
|
||||
# Servers to always allow double puppeting from
|
||||
double_puppet_server_map:
|
||||
{{synapse_domain}}: https://{{synapse_domain}}
|
||||
{{matrix_server_name}}: https://{{matrix_server_name}}
|
||||
# Allow using double puppeting from any server with a valid client .well-known file.
|
||||
double_puppet_allow_discovery: false
|
||||
# Shared secrets for https://github.com/devture/matrix-synapse-shared-secret-auth
|
||||
@ -127,7 +127,7 @@ bridge:
|
||||
# instead of users having to find an access token and run `login-matrix`
|
||||
# manually.
|
||||
login_shared_secret_map:
|
||||
{{synapse_domain}}: foobar
|
||||
{{matrix_server_name}}: foobar
|
||||
|
||||
message_handling_timeout:
|
||||
# Send an error message after this timeout, but keep waiting for the response until the deadline.
|
||||
@ -278,8 +278,8 @@ bridge:
|
||||
# mxid - Specific user
|
||||
permissions:
|
||||
"*": relay
|
||||
"{{synapse_domain}}": user
|
||||
"@{{matrix_admin_name}}:{{synapse_domain}}": admin
|
||||
"{{matrix_server_name}}": user
|
||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
||||
|
||||
# Logging config. See https://github.com/tulir/zeroconfig for details.
|
||||
logging:
|
||||
|
@ -3,7 +3,7 @@ homeserver:
|
||||
# The address that this appservice can use to connect to the homeserver.
|
||||
address: http://synapse:8008
|
||||
# The domain of the homeserver (for MXIDs, etc).
|
||||
domain: {{synapse_domain}}
|
||||
domain: {{matrix_server_name}}
|
||||
# Whether or not to verify the SSL certificate of the homeserver.
|
||||
# Only applies if address starts with https://
|
||||
verify_ssl: true
|
||||
@ -62,7 +62,7 @@ appservice:
|
||||
prefix: /public
|
||||
# The base URL where the public-facing endpoints are available. The prefix is not added
|
||||
# implicitly.
|
||||
external: https://{{synapse_domain}}/public
|
||||
external: https://{{matrix_server_name}}/public
|
||||
|
||||
# Provisioning API part of the web server for automated portal creation and fetching information.
|
||||
# Used by things like mautrix-manager (https://github.com/tulir/mautrix-manager).
|
||||
@ -198,7 +198,7 @@ bridge:
|
||||
sync_direct_chat_list: false
|
||||
# Servers to always allow double puppeting from
|
||||
double_puppet_server_map:
|
||||
{{synapse_domain}}: https://{{synapse_domain}}
|
||||
{{matrix_server_name}}: https://{{matrix_server_name}}
|
||||
# Allow using double puppeting from any server with a valid client .well-known file.
|
||||
double_puppet_allow_discovery: false
|
||||
# Shared secrets for https://github.com/devture/matrix-synapse-shared-secret-auth
|
||||
@ -209,7 +209,7 @@ bridge:
|
||||
# If using this for other servers than the bridge's server,
|
||||
# you must also set the URL in the double_puppet_server_map.
|
||||
login_shared_secret_map:
|
||||
{{synapse_domain}}: foobar
|
||||
{{matrix_server_name}}: foobar
|
||||
# Set to false to disable link previews in messages sent to Telegram.
|
||||
telegram_link_preview: true
|
||||
# Whether or not the !tg join command should do a HTTP request
|
||||
@ -530,9 +530,9 @@ bridge:
|
||||
# mxid - Specific user
|
||||
permissions:
|
||||
"*": "relaybot"
|
||||
"public.{{synapse_domain}}": "user"
|
||||
"{{synapse_domain}}": "full"
|
||||
"@{{matrix_admin_name}}:{{synapse_domain}}": "admin"
|
||||
"public.{{matrix_server_name}}": "user"
|
||||
"{{matrix_server_name}}": "full"
|
||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": "admin"
|
||||
|
||||
# Options related to the message relay Telegram bot.
|
||||
relaybot:
|
||||
|
@ -3,7 +3,7 @@ homeserver:
|
||||
# The address that this appservice can use to connect to the homeserver.
|
||||
address: http://synapse:8008
|
||||
# The domain of the homeserver (also known as server_name, used for MXIDs, etc).
|
||||
domain: {{synapse_domain}}
|
||||
domain: {{matrix_server_name}}
|
||||
|
||||
# What software is the homeserver running?
|
||||
# Standard Matrix homeservers like Synapse, Dendrite and Conduit should just use "standard" here.
|
||||
@ -236,7 +236,7 @@ bridge:
|
||||
force_active_delivery_receipts: false
|
||||
# Servers to always allow double puppeting from
|
||||
double_puppet_server_map:
|
||||
{{synapse_domain}}: https://{{synapse_domain}}
|
||||
{{matrix_server_name}}: https://{{matrix_server_name}}
|
||||
# Allow using double puppeting from any server with a valid client .well-known file.
|
||||
double_puppet_allow_discovery: false
|
||||
# Shared secrets for https://github.com/devture/matrix-synapse-shared-secret-auth
|
||||
@ -245,7 +245,7 @@ bridge:
|
||||
# instead of users having to find an access token and run `login-matrix`
|
||||
# manually.
|
||||
login_shared_secret_map:
|
||||
{{synapse_domain}}: foobar
|
||||
{{matrix_server_name}}: foobar
|
||||
# Whether to explicitly set the avatar and room name for private chat portal rooms.
|
||||
# If set to `default`, this will be enabled in encrypted rooms and disabled in unencrypted rooms.
|
||||
# If set to `always`, all DM rooms will have explicit names and avatars set.
|
||||
@ -434,8 +434,8 @@ bridge:
|
||||
# mxid - Specific user
|
||||
permissions:
|
||||
"*": relay
|
||||
"{{synapse_domain}}": user
|
||||
"@{{matrix_admin_name}}:{{synapse_domain}}": admin
|
||||
"{{matrix_server_name}}": user
|
||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
||||
|
||||
# Settings for relay mode
|
||||
relay:
|
||||
|
@ -1,4 +1,4 @@
|
||||
server_name: "{{top_domain}}"
|
||||
server_name: "{{matrix_server_name}}"
|
||||
pid_file: /data/homeserver.pid
|
||||
listeners:
|
||||
- port: 8008
|
||||
@ -39,7 +39,7 @@ email:
|
||||
#require_transport_security: true
|
||||
enable_tls: "{{ system_email_tls | upper }}"
|
||||
notif_from: "Your Friendly %(app)s homeserver <{{system_email}}>"
|
||||
app_name: "Matrix on {{top_domain}}"
|
||||
app_name: "Matrix on {{synapse_domain}}"
|
||||
enable_notifs: true
|
||||
notif_for_new_users: false
|
||||
client_base_url: "{{domain_matrix_synapse}}"
|
||||
|
@ -2,7 +2,7 @@
|
||||
docker_compose_project_name: "matrix"
|
||||
database_password: "{{matrix_database_password}}"
|
||||
database_type: "postgres"
|
||||
registration_file_folder: "/data/registration/"
|
||||
registration_file_folder: "/data/"
|
||||
well_known_directory: "{{nginx_well_known_root}}/matrix/"
|
||||
|
||||
bridges:
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -1,6 +1,6 @@
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
moodle:
|
||||
image: docker.io/bitnami/moodle:latest
|
||||
ports:
|
||||
@ -15,13 +15,13 @@ services:
|
||||
volumes:
|
||||
- 'moodle:/bitnami/moodle'
|
||||
- 'data:/bitnami/moodledata'
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
moodle:
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks create-proxy-with-domain-replace.yml"
|
||||
include_tasks: create-proxy-with-domain-replace.yml
|
||||
|
@ -1,7 +1,7 @@
|
||||
version: '3.8'
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
logging:
|
||||
@ -12,8 +12,8 @@ services:
|
||||
restart: {{docker_restart_policy}}
|
||||
volumes:
|
||||
- data:/var/www/html
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
server:
|
||||
logging:
|
||||
@ -27,9 +27,9 @@ services:
|
||||
volumes:
|
||||
- "{{docker_compose_instance_confd_directory}}:{{target_mount_conf_d_directory}}:ro"
|
||||
- "data:/var/www/html:ro"
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -133,8 +133,8 @@ Until NC24 MariaDB version has to be used.
|
||||
- https://help.nextcloud.com/t/update-to-22-failed-with-database-error-updated/120682
|
||||
- https://help.nextcloud.com/t/nc-update-to-21-0-0-beta1-exception-database-error/101124/4
|
||||
- https://wolfgang.gassler.org/reset-password-mariadb-mysql-docker/
|
||||
- https://unix.stackexchange.com/questions/478855/ansible-docker-container-and-depends-on
|
||||
- https://unix.stackexchange.com/questions/478855/ansible-docker/container/and-depends-on
|
||||
- https://github.com/gdiepen/docker-convenience-scripts
|
||||
- https://help.nextcloud.com/t/several-issues-after-upgrading-to-nextcloud-21/113118/3
|
||||
- https://forum.openmediavault.org/index.php?thread/31782-docker-nextcloud-talk-plugin-and-turnserver/
|
||||
- https://help.nextcloud.com/t/nextcloud-talk-im-docker-container-turn-server-auf-docker-host-kein-video/84133/10
|
||||
- https://help.nextcloud.com/t/nextcloud-talk-im-docker/container/turn-server-auf-docker-host-kein-video/84133/10
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include task certbot-matomo.yml"
|
||||
include_tasks: certbot-matomo.yml
|
||||
|
@ -2,9 +2,9 @@ version: '3'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
image: "nextcloud:{{version_nextcloud}}-fpm-alpine"
|
||||
@ -19,8 +19,8 @@ services:
|
||||
MYSQL_USER: "{{database_username}}"
|
||||
MYSQL_PASSWORD: "{{database_password}}"
|
||||
MYSQL_HOST: {{database_host}}:3306
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
web:
|
||||
image: nginx:alpine
|
||||
@ -39,7 +39,7 @@ services:
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
cron:
|
||||
container_name: nextcloud-cron
|
||||
@ -50,11 +50,11 @@ services:
|
||||
volumes:
|
||||
- data:/var/www/html
|
||||
entrypoint: /cron.sh
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
redis:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -21,13 +21,13 @@ x-op-app: &app
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
cache:
|
||||
image: memcached
|
||||
container_name: openproject-memcached
|
||||
restart: {{docker_restart_policy}}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
proxy:
|
||||
restart: {{docker_restart_policy}}
|
||||
@ -41,7 +41,7 @@ services:
|
||||
OPENPROJECT_RAILS__RELATIVE__URL__ROOT: "${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}"
|
||||
depends_on:
|
||||
- web
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
volumes:
|
||||
- "data:/var/openproject/assets"
|
||||
- "{{dummy_volume}}:/var/openproject/pgdata" # This mount is unnecessary and just done to prevent anonymous volumes
|
||||
@ -50,8 +50,8 @@ services:
|
||||
<<: *app
|
||||
command: "./docker/prod/web"
|
||||
container_name: openproject-web
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-also-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-also-database.yml.j2' %}
|
||||
cache:
|
||||
condition: service_started
|
||||
seeder:
|
||||
@ -79,8 +79,8 @@ services:
|
||||
<<: *app
|
||||
command: "./docker/prod/worker"
|
||||
container_name: openproject-worker
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-also-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-also-database.yml.j2' %}
|
||||
cache:
|
||||
condition: service_started
|
||||
seeder:
|
||||
@ -90,8 +90,8 @@ services:
|
||||
<<: *app
|
||||
command: "./docker/prod/cron"
|
||||
container_name: openproject-cron
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker-container-depends-on-also-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-also-database.yml.j2' %}
|
||||
cache:
|
||||
condition: service_started
|
||||
seeder:
|
||||
@ -102,9 +102,9 @@ services:
|
||||
command: "./docker/prod/seeder"
|
||||
container_name: openproject-seeder
|
||||
restart: on-failure
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
@ -2,7 +2,7 @@ docker_compose_project_name: "openproject"
|
||||
repository_directory: "{{ path_docker_compose_instances }}{{docker_compose_project_name}}/"
|
||||
docker_compose_instance_directory: "{{repository_directory}}compose/"
|
||||
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
|
||||
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose-backup.yml"
|
||||
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker/compose/backup.yml"
|
||||
database_password: "{{openproject_database_password}}"
|
||||
repository_address: "https://github.com/opf/openproject-deploy"
|
||||
database_type: "postgres"
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include create-domains.yml"
|
||||
include_tasks: create-domains.yml
|
||||
|
@ -2,9 +2,9 @@ version: "3.3"
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
image: chocobozzz/peertube:production-bullseye
|
||||
@ -18,13 +18,13 @@ services:
|
||||
- data:/data
|
||||
- config:/config
|
||||
restart: "always"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
assets:
|
||||
data:
|
||||
redis:
|
||||
config:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,9 +2,9 @@ version: '2'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-service-redis.yml.j2' %}
|
||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||
|
||||
application:
|
||||
image: zknt/pixelfed
|
||||
@ -19,8 +19,8 @@ services:
|
||||
- "./env:/var/www/.env"
|
||||
ports:
|
||||
- "{{http_port}}:80"
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
worker:
|
||||
image: zknt/pixelfed
|
||||
restart: {{docker_restart_policy}}
|
||||
@ -38,14 +38,14 @@ services:
|
||||
interval: 60s
|
||||
timeout: 5s
|
||||
retries: 1
|
||||
{% include 'templates/docker-container-depends-on-database-redis.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||
application:
|
||||
condition: service_started
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
redis:
|
||||
data:
|
||||
bootstrap:
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-common.yml"
|
||||
include_tasks: docker-compose-common.yml
|
||||
- name: "include docker/compose/common.yml"
|
||||
include_tasks: docker/compose/common.yml
|
||||
|
||||
- name: pull app repository
|
||||
git:
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: '3'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
logging:
|
||||
@ -26,10 +26,10 @@ services:
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes.yml.j2' %}
|
||||
data:
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
- name: "include docker-compose-database.yml"
|
||||
include_tasks: docker-compose-database.yml
|
||||
- name: "include docker/compose/database.yml"
|
||||
include_tasks: docker/compose/database.yml
|
||||
|
||||
- name: "include tasks nginx-docker-proxy-domain.yml"
|
||||
include_tasks: nginx-docker-proxy-domain.yml
|
||||
|
@ -2,7 +2,7 @@ version: '3'
|
||||
|
||||
services:
|
||||
|
||||
{% include 'templates/docker-service-' + database_type + '.yml.j2' %}
|
||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||
|
||||
application:
|
||||
logging:
|
||||
@ -25,8 +25,8 @@ services:
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
{% include 'templates/docker-container-depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-container-networks.yml.j2' %}
|
||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||
|
||||
{% include 'templates/docker-compose-volumes-just-database.yml.j2' %}
|
||||
{% include 'templates/docker-compose-networks.yml.j2' %}
|
||||
{% include 'templates/docker/compose/volumes-just-database.yml.j2' %}
|
||||
{% include 'templates/docker/compose/networks.yml.j2' %}
|
||||
|
@ -16,4 +16,4 @@ curl -I {{address}}
|
||||
- https://askubuntu.com/questions/1103626/should-i-enable-client-max-body-size-proxy-request-buffering-and-proxy-bufferin
|
||||
- https://serverfault.com/questions/692577/whats-the-difference-between-proxy-buffer-and-proxy-cache-module-in-nginx-confi
|
||||
- https://github.com/sissbruecker/linkding/issues/88
|
||||
- https://www.bogotobogo.com/DevOps/Docker/docker-compose-Nginx-Reverse-Proxy-Multiple-Containers.php
|
||||
- https://www.bogotobogo.com/DevOps/Docker/docker/compose/Nginx-Reverse-Proxy-Multiple-Containers.php
|
||||
|
@ -1,8 +1,8 @@
|
||||
- name: include docker vars/docker-database.yml.j2
|
||||
include_vars: vars/docker-database.yml.j2
|
||||
|
||||
- name: "include docker-compose-common.yml"
|
||||
include_tasks: docker-compose-common.yml
|
||||
- name: "include docker/compose/common.yml"
|
||||
include_tasks: docker/compose/common.yml
|
||||
|
||||
- name: create central database
|
||||
include_role:
|
Loading…
Reference in New Issue
Block a user