mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-04-28 18:30:24 +02:00
Compare commits
10 Commits
209bb7c504
...
9181423e84
Author | SHA1 | Date | |
---|---|---|---|
9181423e84 | |||
421035a1f6 | |||
c70cc32a9d | |||
1b7f0affa9 | |||
c5a7c76800 | |||
c5d4956635 | |||
0d77245b46 | |||
7b490c18d2 | |||
1a117e47b5 | |||
77f4571316 |
@ -5,8 +5,8 @@ ip4_address: "127.0.0.1" # Change thie in inventory to the ip address
|
|||||||
backups_folder_path: "/Backups/" # Path to the backups folder
|
backups_folder_path: "/Backups/" # Path to the backups folder
|
||||||
|
|
||||||
# Administrator
|
# Administrator
|
||||||
administrator_username: "administrator" # Username of the administrator
|
administrator_username: "administrator" # Username of the administrator
|
||||||
administrator_email: "{{administrator_username}}@{{top_domain}}" # Email of the administrator
|
administrator_email: "{{administrator_username}}@{{top_domain}}" # Email of the administrator
|
||||||
|
|
||||||
# Email Configuration
|
# Email Configuration
|
||||||
system_email_local: no-reply
|
system_email_local: no-reply
|
||||||
@ -148,6 +148,7 @@ domain_funkwhale: "music.{{top_domain}}"
|
|||||||
domain_gitea: "git.{{top_domain}}"
|
domain_gitea: "git.{{top_domain}}"
|
||||||
domain_gitlab: "gitlab.{{top_domain}}"
|
domain_gitlab: "gitlab.{{top_domain}}"
|
||||||
domain_portfolio: "{{top_domain}}"
|
domain_portfolio: "{{top_domain}}"
|
||||||
|
domain_keycloak: "auth.{{top_domain}}"
|
||||||
domain_listmonk: "newsletter.{{top_domain}}"
|
domain_listmonk: "newsletter.{{top_domain}}"
|
||||||
domain_mailu: "{{system_email_host}}"
|
domain_mailu: "{{system_email_host}}"
|
||||||
domain_mastodon: "microblog.{{top_domain}}"
|
domain_mastodon: "microblog.{{top_domain}}"
|
||||||
@ -174,6 +175,7 @@ redirect_domain_mappings:
|
|||||||
- { source: "discourse.{{top_domain}}", target: "{{domain_discourse}}" }
|
- { source: "discourse.{{top_domain}}", target: "{{domain_discourse}}" }
|
||||||
- { source: "funkwhale.{{top_domain}}", target: "{{domain_funkwhale}}" }
|
- { source: "funkwhale.{{top_domain}}", target: "{{domain_funkwhale}}" }
|
||||||
- { source: "gitea.{{top_domain}}", target: "{{domain_gitea}}" }
|
- { source: "gitea.{{top_domain}}", target: "{{domain_gitea}}" }
|
||||||
|
- { source: "keycloak.{{top_domain}}", target: "{{domain_keycloak}}" }
|
||||||
- { source: "listmonk.{{top_domain}}", target: "{{domain_listmonk}}" }
|
- { source: "listmonk.{{top_domain}}", target: "{{domain_listmonk}}" }
|
||||||
- { source: "moodle.{{top_domain}}", target: "{{domain_moodle}}" }
|
- { source: "moodle.{{top_domain}}", target: "{{domain_moodle}}" }
|
||||||
- { source: "nextcloud.{{top_domain}}", target: "{{domain_nextcloud}}" }
|
- { source: "nextcloud.{{top_domain}}", target: "{{domain_nextcloud}}" }
|
||||||
@ -185,6 +187,7 @@ redirect_domain_mappings:
|
|||||||
- { source: "taiga.{{top_domain}}", target: "{{domain_taiga}}" }
|
- { source: "taiga.{{top_domain}}", target: "{{domain_taiga}}" }
|
||||||
- { source: "videos.{{top_domain}}", target: "{{domain_peertube}}" }
|
- { source: "videos.{{top_domain}}", target: "{{domain_peertube}}" }
|
||||||
|
|
||||||
|
|
||||||
## Docker Applications
|
## Docker Applications
|
||||||
|
|
||||||
### Enable Central MariaDB
|
### Enable Central MariaDB
|
||||||
@ -194,9 +197,6 @@ enable_central_database_mailu: "{{enable_central_database}}"
|
|||||||
### Enable Storage Optimizer for Docker Volumes
|
### Enable Storage Optimizer for Docker Volumes
|
||||||
enable_system_storage_optimizer: true
|
enable_system_storage_optimizer: true
|
||||||
|
|
||||||
### Common Configurations
|
|
||||||
postgres_default_version: "16"
|
|
||||||
|
|
||||||
### Docker Role Specific Parameters
|
### Docker Role Specific Parameters
|
||||||
docker_restart_policy: "unless-stopped"
|
docker_restart_policy: "unless-stopped"
|
||||||
|
|
||||||
@ -206,22 +206,57 @@ akaunting_company_name: "{{top_domain}}"
|
|||||||
akaunting_company_email: "{{administrator_email}}"
|
akaunting_company_email: "{{administrator_email}}"
|
||||||
akaunting_setup_admin_email: "{{administrator_email}}"
|
akaunting_setup_admin_email: "{{administrator_email}}"
|
||||||
|
|
||||||
|
#### Attendize
|
||||||
|
attendize_version: "latest"
|
||||||
|
|
||||||
|
#### Baserow
|
||||||
|
baserow_version: "latest"
|
||||||
|
|
||||||
#### Big Blue Button
|
#### Big Blue Button
|
||||||
bigbluebutton_enable_greenlight: "true"
|
bigbluebutton_enable_greenlight: "true"
|
||||||
|
|
||||||
|
#### Bluesky
|
||||||
|
bluesky_administrator_email: "{{administrator_email}}"
|
||||||
|
bluesky_pds_version: "latest"
|
||||||
|
|
||||||
|
#### Friendica
|
||||||
|
friendica_version: "latest"
|
||||||
|
|
||||||
|
#### Gitea
|
||||||
|
gitea_version: "latest"
|
||||||
|
|
||||||
|
#### Gitlab
|
||||||
|
gitlab_version: "latest"
|
||||||
|
|
||||||
|
#### Joomla
|
||||||
|
joomla_version: "latest"
|
||||||
|
|
||||||
|
#### Keycloak
|
||||||
|
keycloak_version: "latest"
|
||||||
|
keycloak_administrator_username: "{{administrator_username}}"
|
||||||
|
|
||||||
#### Listmonk
|
#### Listmonk
|
||||||
listmonk_admin_username: "admin"
|
listmonk_admin_username: "admin"
|
||||||
listmonk_public_api_activated: False # Security hole. Can be used for spaming
|
listmonk_public_api_activated: False # Security hole. Can be used for spaming
|
||||||
|
listmonk_version: "latest"
|
||||||
|
|
||||||
|
#### MariaDB
|
||||||
|
mariadb_version: "latest"
|
||||||
|
|
||||||
|
#### Matomo
|
||||||
|
matomo_version: "latest"
|
||||||
|
|
||||||
#### Mastodon
|
#### Mastodon
|
||||||
mastodon_version: "latest"
|
mastodon_version: "latest"
|
||||||
mastodon_single_user_mode: false
|
mastodon_single_user_mode: false
|
||||||
|
|
||||||
#### Matrix
|
#### Matrix
|
||||||
matrix_admin_name: "{{administrator_username}}" # Accountname of the matrix admin
|
matrix_administrator_username: "{{administrator_username}}" # Accountname of the matrix admin
|
||||||
matrix_playbook_tags: "setup-all,start" # For the initial update use: install-all,ensure-matrix-users-created,start
|
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_role: "compose" # Role to setup Matrix. Valid values: ansible, compose
|
||||||
matrix_server_name: "{{top_domain}}" # Adress for the account names etc.
|
matrix_server_name: "{{top_domain}}" # Adress for the account names etc.
|
||||||
|
matrix_synapse_version: "latest"
|
||||||
|
matrix_element_version: "latest"
|
||||||
|
|
||||||
#### Mailu
|
#### Mailu
|
||||||
mailu_version: "2024.06"
|
mailu_version: "2024.06"
|
||||||
@ -229,9 +264,13 @@ mailu_domain: "{{top_domain}}"
|
|||||||
mailu_subnet: "192.168.203.0/24"
|
mailu_subnet: "192.168.203.0/24"
|
||||||
|
|
||||||
#### Moodle
|
#### Moodle
|
||||||
moodle_site_name: "Global Learning Academy on {{top_domain}}"
|
moodle_site_name: "Global Learning Academy on {{top_domain}}"
|
||||||
moodle_user_name: "{{administrator_username}}"
|
moodle_administrator_name: "{{administrator_username}}"
|
||||||
moodle_user_email: "{{administrator_email}}"
|
moodle_administrator_email: "{{administrator_email}}"
|
||||||
|
moodle_version: "latest"
|
||||||
|
|
||||||
|
#### MyBB
|
||||||
|
mybb_version: "latest"
|
||||||
|
|
||||||
#### Nextcloud
|
#### Nextcloud
|
||||||
nextcloud_version: "production" # @see https://nextcloud.com/blog/nextcloud-release-channels-and-how-to-track-them/
|
nextcloud_version: "production" # @see https://nextcloud.com/blog/nextcloud-release-channels-and-how-to-track-them/
|
||||||
@ -241,6 +280,15 @@ peertube_version: "bookworm"
|
|||||||
|
|
||||||
#### Pixelfed
|
#### Pixelfed
|
||||||
pixelfed_app_name: "Pictures on {{top_domain}}"
|
pixelfed_app_name: "Pictures on {{top_domain}}"
|
||||||
|
pixelfed_version: "latest"
|
||||||
|
|
||||||
|
#### Postgres
|
||||||
|
# Please set an version in your inventory file - Rolling release for postgres isn't recommended
|
||||||
|
postgres_database_version: "latest"
|
||||||
|
|
||||||
|
#### Taiga
|
||||||
|
taiga_version: "latest"
|
||||||
|
|
||||||
#### YOURLS
|
#### YOURLS
|
||||||
yourls_user: "{{administrator_username}}"
|
yourls_administrator_username: "{{administrator_username}}"
|
||||||
|
yourls_version: "latest"
|
@ -45,7 +45,7 @@ pixelfed_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
|
|||||||
pixelfed_app_key: "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"
|
wordpress_database_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
|
||||||
yourls_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"
|
yourls_administrator_username_password: "I_NEED_TO_CHANGE_THIS_UNSECURE_PASSWORD"
|
||||||
|
|
||||||
path_mass_storage: "/mnt/hdd/"
|
path_mass_storage: "/mnt/hdd/"
|
||||||
path_rapid_storage: "/mnt/ssd/"
|
path_rapid_storage: "/mnt/ssd/"
|
@ -297,6 +297,15 @@
|
|||||||
http_port_api: 8030
|
http_port_api: 8030
|
||||||
http_port_web: 8031
|
http_port_web: 8031
|
||||||
|
|
||||||
|
- name: setup keycloak
|
||||||
|
hosts: keycloak
|
||||||
|
become: true
|
||||||
|
roles:
|
||||||
|
- role: docker-keycloak
|
||||||
|
vars:
|
||||||
|
domain: "{{domain_keycloak}}"
|
||||||
|
http_port: 8032
|
||||||
|
|
||||||
# Native Webserver Roles
|
# Native Webserver Roles
|
||||||
- name: setup nginx-static-repositorys
|
- name: setup nginx-static-repositorys
|
||||||
hosts: nginx-static-repositorys
|
hosts: nginx-static-repositorys
|
||||||
|
@ -5,7 +5,7 @@ services:
|
|||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
web:
|
web:
|
||||||
image: attendize_web:latest
|
image: "attendize_web:{{attendize_version}}"
|
||||||
ports:
|
ports:
|
||||||
- "{{http_port}}:80"
|
- "{{http_port}}:80"
|
||||||
volumes:
|
volumes:
|
||||||
@ -19,7 +19,7 @@ services:
|
|||||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||||
|
|
||||||
worker:
|
worker:
|
||||||
image: attendize_worker:latest
|
image: "attendize_worker:{{attendize_version}}"
|
||||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||||
maildev:
|
maildev:
|
||||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||||
|
@ -5,7 +5,7 @@ services:
|
|||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
application:
|
application:
|
||||||
image: baserow/baserow:1.19.1
|
image: "baserow/baserow:{{baserow_version}}"
|
||||||
container_name: baserow-application
|
container_name: baserow-application
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
logging:
|
logging:
|
||||||
@ -16,11 +16,6 @@ services:
|
|||||||
- data:/baserow/data
|
- data:/baserow/data
|
||||||
ports:
|
ports:
|
||||||
- "{{http_port}}:80"
|
- "{{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/networks.yml.j2' %}
|
||||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
pds:
|
pds:
|
||||||
image: ghcr.io/bluesky-social/pds:latest
|
image: "ghcr.io/bluesky-social/pds:{{bluesky_pds_version}}"
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
volumes:
|
volumes:
|
||||||
- pds_data:/pds
|
- pds_data:/pds
|
||||||
@ -8,7 +8,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
# Geben Sie hier Ihre Domain und Konfigurationsdetails an
|
# Geben Sie hier Ihre Domain und Konfigurationsdetails an
|
||||||
PDS_HOSTNAME: "{{domain_api}}"
|
PDS_HOSTNAME: "{{domain_api}}"
|
||||||
PDS_ADMIN_EMAIL: "{{administrator_email}}"
|
PDS_ADMIN_EMAIL: "{{bluesky_administrator_email}}"
|
||||||
PDS_SERVICE_DID: "did:web:{{domain_api}}"
|
PDS_SERVICE_DID: "did:web:{{domain_api}}"
|
||||||
# See https://mattdyson.org/blog/2024/11/self-hosting-bluesky-pds/
|
# See https://mattdyson.org/blog/2024/11/self-hosting-bluesky-pds/
|
||||||
PDS_SERVICE_HANDLE_DOMAINS: ".{{top_domain}}"
|
PDS_SERVICE_HANDLE_DOMAINS: ".{{top_domain}}"
|
||||||
|
@ -3,7 +3,7 @@ services:
|
|||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
application:
|
application:
|
||||||
image: friendica
|
image: "friendica:{{friendica_version}}"
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
volumes:
|
volumes:
|
||||||
- data:/var/www/html
|
- data:/var/www/html
|
||||||
|
@ -6,7 +6,7 @@ services:
|
|||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
image: gitea/gitea:latest
|
image: "gitea/gitea:{{gitea_version}}"
|
||||||
environment:
|
environment:
|
||||||
- USER_UID=1000
|
- USER_UID=1000
|
||||||
- USER_GID=1000
|
- USER_GID=1000
|
||||||
|
@ -5,7 +5,7 @@ services:
|
|||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
web:
|
web:
|
||||||
image: 'gitlab/gitlab-ee:latest'
|
image: "gitlab/gitlab-ee:{{gitlab_version}}"
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
hostname: '{{domain}}'
|
hostname: '{{domain}}'
|
||||||
environment:
|
environment:
|
||||||
|
@ -3,7 +3,7 @@ services:
|
|||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
application:
|
application:
|
||||||
image: joomla
|
image: "joomla:{{joomla_version}}"
|
||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
environment:
|
environment:
|
||||||
|
@ -4,3 +4,6 @@
|
|||||||
- https://www.keycloak.org/
|
- https://www.keycloak.org/
|
||||||
- https://github.com/keycloak/keycloak
|
- https://github.com/keycloak/keycloak
|
||||||
- https://en.wikipedia.org/wiki/Keycloak
|
- https://en.wikipedia.org/wiki/Keycloak
|
||||||
|
- https://www.keycloak.org/server/containers
|
||||||
|
- https://www.youtube.com/watch?v=fvxQ8bW0vO8
|
||||||
|
- https://www.keycloak.org/server/reverseproxy
|
10
roles/docker-keycloak/tasks/main.yml
Normal file
10
roles/docker-keycloak/tasks/main.yml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
- 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
|
||||||
|
|
||||||
|
- name: add docker-compose.yml
|
||||||
|
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml
|
||||||
|
notify: docker compose project setup
|
@ -1,32 +1,27 @@
|
|||||||
version: '3.7'
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
|
||||||
# include database container
|
|
||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
keycloak:
|
keycloak:
|
||||||
image: quay.io/keycloak/keycloak:23.0.6
|
image: quay.io/keycloak/keycloak:{{keycloak_version}}
|
||||||
command: start
|
command: start
|
||||||
environment:
|
environment:
|
||||||
KC_HOSTNAME: {{domain}}
|
KC_HOSTNAME: {{domain}}
|
||||||
KC_HOSTNAME_PORT: {{http_port}}
|
KC_HOSTNAME_STRICT_BACKCHANNEL: true
|
||||||
KC_HOSTNAME_STRICT_BACKCHANNEL: false
|
KC_HTTP_ENABLED: true
|
||||||
KC_HTTP_ENABLED: true
|
KC_HOSTNAME_STRICT_HTTPS: false
|
||||||
KC_HOSTNAME_STRICT_HTTPS: false
|
KC_PROXY: passthrough
|
||||||
KC_HEALTH_ENABLED: true
|
KC_HEALTH_ENABLED: true
|
||||||
KEYCLOAK_ADMIN: ${KEYCLOAK_ADMIN}
|
KEYCLOAK_ADMIN: "{{keycloak_administrator_username}}"
|
||||||
KEYCLOAK_ADMIN_PASSWORD: ${KEYCLOAK_ADMIN_PASSWORD}
|
KEYCLOAK_ADMIN_PASSWORD: "{{keycloak_administrator_password}}"
|
||||||
KC_DB: postgres
|
KC_DB: postgres
|
||||||
KC_DB_URL: jdbc:postgresql://postgres/${POSTGRES_DB}
|
KC_DB_URL: jdbc:postgresql://{{database_host}}/{{database_name}}
|
||||||
KC_DB_USERNAME: ${POSTGRES_USER}
|
KC_DB_USERNAME: {{database_username}}
|
||||||
KC_DB_PASSWORD: ${POSTGRES_PASSWORD}
|
KC_DB_PASSWORD: {{database_password}}
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:{{http_port}}:8080"
|
- "127.0.0.1:{{http_port}}:8080"
|
||||||
restart: always
|
restart: {{docker_restart_policy}}
|
||||||
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
|
||||||
{% 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/networks.yml.j2' %}
|
{% include 'templates/docker/compose/networks.yml.j2' %}
|
3
roles/docker-keycloak/vars/main.yml
Normal file
3
roles/docker-keycloak/vars/main.yml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
docker_compose_project_name: "keycloak"
|
||||||
|
database_type: "postgres"
|
||||||
|
database_password: "{{keycloak_database_password}}"
|
@ -4,7 +4,7 @@ services:
|
|||||||
|
|
||||||
application:
|
application:
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
image: listmonk/listmonk:latest
|
image: listmonk/listmonk:{{listmonk_version}}
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:{{http_port}}:9000"
|
- "127.0.0.1:{{http_port}}:9000"
|
||||||
environment:
|
environment:
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
- name: install MariaDB
|
- name: install MariaDB
|
||||||
docker_container:
|
docker_container:
|
||||||
name: central-mariadb
|
name: central-mariadb
|
||||||
image: mariadb:latest #could lead to problems with nextcloud
|
image: "mariadb:{{mariadb_version}}" #could lead to problems with nextcloud
|
||||||
detach: yes
|
detach: yes
|
||||||
env:
|
env:
|
||||||
MARIADB_ROOT_PASSWORD: "{{central_mariadb_root_password}}"
|
MARIADB_ROOT_PASSWORD: "{{central_mariadb_root_password}}"
|
||||||
|
@ -5,7 +5,7 @@ services:
|
|||||||
application:
|
application:
|
||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
image: matomo
|
image: matomo:{{matomo_version}}
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:{{http_port}}:80"
|
- "127.0.0.1:{{http_port}}:80"
|
||||||
|
@ -131,7 +131,7 @@
|
|||||||
|
|
||||||
- name: create admin account
|
- name: create admin account
|
||||||
command:
|
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
|
cmd: docker compose exec -it synapse register_new_matrix_user -u {{matrix_administrator_username}} -p {{matrix_admin_password}} -a -c /data/homeserver.yaml http://localhost:8008
|
||||||
chdir: "{{ docker_compose_instance_directory }}"
|
chdir: "{{ docker_compose_instance_directory }}"
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
when: mode_setup | bool
|
when: mode_setup | bool
|
||||||
|
@ -3,7 +3,7 @@ services:
|
|||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
|
|
||||||
synapse:
|
synapse:
|
||||||
image: matrixdotorg/synapse:latest
|
image: matrixdotorg/synapse:{{matrix_synapse_version}}
|
||||||
container_name: matrix-synapse
|
container_name: matrix-synapse
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
logging:
|
logging:
|
||||||
@ -33,7 +33,7 @@ services:
|
|||||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||||
|
|
||||||
element:
|
element:
|
||||||
image: vectorim/element-web:latest
|
image: vectorim/element-web:{{matrix_element_version}}
|
||||||
container_name: matrix-element
|
container_name: matrix-element
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
volumes:
|
volumes:
|
||||||
|
@ -381,7 +381,7 @@ bridge:
|
|||||||
permissions:
|
permissions:
|
||||||
"*": relay
|
"*": relay
|
||||||
"{{matrix_server_name}}": user
|
"{{matrix_server_name}}": user
|
||||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
"@{{matrix_administrator_username}}:{{matrix_server_name}}": admin
|
||||||
|
|
||||||
relay:
|
relay:
|
||||||
# Whether relay mode should be allowed. If allowed, `!fb set-relay` can be used to turn any
|
# Whether relay mode should be allowed. If allowed, `!fb set-relay` can be used to turn any
|
||||||
|
@ -360,7 +360,7 @@ bridge:
|
|||||||
permissions:
|
permissions:
|
||||||
"*": relay
|
"*": relay
|
||||||
"{{matrix_server_name}}": user
|
"{{matrix_server_name}}": user
|
||||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
"@{{matrix_administrator_username}}:{{matrix_server_name}}": admin
|
||||||
|
|
||||||
relay:
|
relay:
|
||||||
# Whether relay mode should be allowed. If allowed, `!ig set-relay` can be used to turn any
|
# Whether relay mode should be allowed. If allowed, `!ig set-relay` can be used to turn any
|
||||||
|
@ -275,7 +275,7 @@ bridge:
|
|||||||
permissions:
|
permissions:
|
||||||
"*": relay
|
"*": relay
|
||||||
"{{matrix_server_name}}": user
|
"{{matrix_server_name}}": user
|
||||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
"@{{matrix_administrator_username}}:{{matrix_server_name}}": admin
|
||||||
|
|
||||||
# Settings for relay mode
|
# Settings for relay mode
|
||||||
relay:
|
relay:
|
||||||
|
@ -279,7 +279,7 @@ bridge:
|
|||||||
permissions:
|
permissions:
|
||||||
"*": relay
|
"*": relay
|
||||||
"{{matrix_server_name}}": user
|
"{{matrix_server_name}}": user
|
||||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
"@{{matrix_administrator_username}}:{{matrix_server_name}}": admin
|
||||||
|
|
||||||
# Logging config. See https://github.com/tulir/zeroconfig for details.
|
# Logging config. See https://github.com/tulir/zeroconfig for details.
|
||||||
logging:
|
logging:
|
||||||
|
@ -532,7 +532,7 @@ bridge:
|
|||||||
"*": "relaybot"
|
"*": "relaybot"
|
||||||
"public.{{matrix_server_name}}": "user"
|
"public.{{matrix_server_name}}": "user"
|
||||||
"{{matrix_server_name}}": "full"
|
"{{matrix_server_name}}": "full"
|
||||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": "admin"
|
"@{{matrix_administrator_username}}:{{matrix_server_name}}": "admin"
|
||||||
|
|
||||||
# Options related to the message relay Telegram bot.
|
# Options related to the message relay Telegram bot.
|
||||||
relaybot:
|
relaybot:
|
||||||
|
@ -435,7 +435,7 @@ bridge:
|
|||||||
permissions:
|
permissions:
|
||||||
"*": relay
|
"*": relay
|
||||||
"{{matrix_server_name}}": user
|
"{{matrix_server_name}}": user
|
||||||
"@{{matrix_admin_name}}:{{matrix_server_name}}": admin
|
"@{{matrix_administrator_username}}:{{matrix_server_name}}": admin
|
||||||
|
|
||||||
# Settings for relay mode
|
# Settings for relay mode
|
||||||
relay:
|
relay:
|
||||||
|
@ -5,7 +5,6 @@ server {
|
|||||||
# For the federation port
|
# For the federation port
|
||||||
listen 8448 ssl default_server;
|
listen 8448 ssl default_server;
|
||||||
listen [::]:8448 ssl default_server;
|
listen [::]:8448 ssl default_server;
|
||||||
http2 on;
|
|
||||||
|
|
||||||
{% if nginx_matomo_tracking | bool %}
|
{% if nginx_matomo_tracking | bool %}
|
||||||
{% include 'roles/nginx-matomo-tracking/templates/matomo-tracking.conf.j2' %}
|
{% include 'roles/nginx-matomo-tracking/templates/matomo-tracking.conf.j2' %}
|
||||||
|
@ -2,6 +2,7 @@ services:
|
|||||||
|
|
||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
application:
|
application:
|
||||||
|
# Seems like image tag got lost. @todo Check and implement if necessary
|
||||||
log_driver: journald
|
log_driver: journald
|
||||||
restart: "{{docker_restart_policy}}"
|
restart: "{{docker_restart_policy}}"
|
||||||
depends_on:
|
depends_on:
|
||||||
|
@ -2,7 +2,7 @@ services:
|
|||||||
|
|
||||||
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
|
||||||
moodle:
|
moodle:
|
||||||
image: docker.io/bitnami/moodle:latest
|
image: docker.io/bitnami/moodle:{{moodle_version}}
|
||||||
ports:
|
ports:
|
||||||
- 127.0.0.1:{{http_port}}:8080
|
- 127.0.0.1:{{http_port}}:8080
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
@ -18,9 +18,9 @@ services:
|
|||||||
- MOODLE_SITE_NAME="{{moodle_site_name}}"
|
- MOODLE_SITE_NAME="{{moodle_site_name}}"
|
||||||
- MOODLE_SSLPROXY=yes
|
- MOODLE_SSLPROXY=yes
|
||||||
- MOODLE_REVERSE_PROXY=yes
|
- MOODLE_REVERSE_PROXY=yes
|
||||||
- MOODLE_USERNAME={{moodle_user_name}}
|
- MOODLE_USERNAME={{moodle_administrator_name}}
|
||||||
- MOODLE_PASSWORD={{moodle_user_password}}
|
- MOODLE_PASSWORD={{moodle_user_password}}
|
||||||
- MOODLE_EMAIL={{moodle_user_email}}
|
- MOODLE_EMAIL={{moodle_administrator_email}}
|
||||||
- BITNAMI_DEBUG={% if mode_debug | bool %}true{% else %}false{% endif %}
|
- BITNAMI_DEBUG={% if mode_debug | bool %}true{% else %}false{% endif %}
|
||||||
volumes:
|
volumes:
|
||||||
- 'moodle:/bitnami/moodle'
|
- 'moodle:/bitnami/moodle'
|
||||||
|
@ -7,7 +7,7 @@ services:
|
|||||||
driver: journald
|
driver: journald
|
||||||
options:
|
options:
|
||||||
tag: "mybb_application"
|
tag: "mybb_application"
|
||||||
image: mybb/mybb:latest
|
image: mybb/mybb:{{mybb_version}}
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
volumes:
|
volumes:
|
||||||
- data:/var/www/html
|
- data:/var/www/html
|
||||||
|
@ -5,7 +5,7 @@ services:
|
|||||||
{% include 'templates/docker/services/redis.yml.j2' %}
|
{% include 'templates/docker/services/redis.yml.j2' %}
|
||||||
|
|
||||||
application:
|
application:
|
||||||
image: zknt/pixelfed
|
image: zknt/pixelfed:{{pixelfed_version}}
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
@ -19,7 +19,7 @@ services:
|
|||||||
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
{% include 'templates/docker/container/depends-on-database-redis.yml.j2' %}
|
||||||
{% include 'templates/docker/container/networks.yml.j2' %}
|
{% include 'templates/docker/container/networks.yml.j2' %}
|
||||||
worker:
|
worker:
|
||||||
image: zknt/pixelfed
|
image: zknt/pixelfed:{{pixelfed_version}}
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
- name: Install PostgreSQL
|
- name: Install PostgreSQL
|
||||||
docker_container:
|
docker_container:
|
||||||
name: central-postgres
|
name: central-postgres
|
||||||
image: "postgres:{{database_version}}"
|
image: "postgres:{{postgres_database_version}}"
|
||||||
detach: yes
|
detach: yes
|
||||||
env:
|
env:
|
||||||
POSTGRES_PASSWORD: "{{ central_postgres_password }}"
|
POSTGRES_PASSWORD: "{{ central_postgres_password }}"
|
||||||
|
@ -41,7 +41,7 @@ services:
|
|||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
image: taigaio/taiga-back:latest
|
image: taigaio/taiga-back:{{taiga_version}}
|
||||||
environment: *default-back-environment
|
environment: *default-back-environment
|
||||||
volumes: *default-back-volumes
|
volumes: *default-back-volumes
|
||||||
|
|
||||||
|
@ -5,18 +5,18 @@ services:
|
|||||||
application:
|
application:
|
||||||
logging:
|
logging:
|
||||||
driver: journald
|
driver: journald
|
||||||
image: yourls
|
image: yourls:{{yourls_version}}
|
||||||
restart: {{docker_restart_policy}}
|
restart: {{docker_restart_policy}}
|
||||||
ports:
|
ports:
|
||||||
- "127.0.0.1:{{http_port}}:80"
|
- "127.0.0.1:{{http_port}}:80"
|
||||||
environment:
|
environment:
|
||||||
YOURLS_DB_HOST: "{{database_host}}"
|
YOURLS_DB_HOST: "{{database_host}}"
|
||||||
YOURLS_DB_USER: "{{database_username}}"
|
YOURLS_DB_USER: "{{database_username}}"
|
||||||
YOURLS_DB_PASS: "{{database_password}}"
|
YOURLS_DB_PASS: "{{database_password}}"
|
||||||
YOURLS_DB_NAME: "{{database_name}}"
|
YOURLS_DB_NAME: "{{database_name}}"
|
||||||
YOURLS_SITE: "https://{{domain}}"
|
YOURLS_SITE: "https://{{domain}}"
|
||||||
YOURLS_USER: "{{yourls_user}}"
|
yourls_administrator_username: "{{yourls_administrator_username}}"
|
||||||
YOURLS_PASS: "{{yourls_user_password}}"
|
YOURLS_PASS: "{{yourls_administrator_username_password}}"
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "curl", "-f", "http://127.0.0.1/admin/"]
|
test: ["CMD", "curl", "-f", "http://127.0.0.1/admin/"]
|
||||||
interval: 1m
|
interval: 1m
|
||||||
|
@ -111,7 +111,7 @@ def upgrade_listmonk():
|
|||||||
Runs the upgrade for Listmonk
|
Runs the upgrade for Listmonk
|
||||||
"""
|
"""
|
||||||
print("Starting Listmonk upgrade.")
|
print("Starting Listmonk upgrade.")
|
||||||
run_command("docker compose run application ./listmonk --upgrade")
|
run_command('echo "y" | docker compose run -T application ./listmonk --upgrade')
|
||||||
print("Upgrade complete.")
|
print("Upgrade complete.")
|
||||||
|
|
||||||
def update_nextcloud():
|
def update_nextcloud():
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# This template needs to be included in docker-compose.yml, which depend on a postgres database
|
# This template needs to be included in docker-compose.yml, which depend on a postgres database
|
||||||
{% if not enable_central_database | bool %}
|
{% if not enable_central_database | bool %}
|
||||||
database:
|
database:
|
||||||
image: postgres:{{database_version}}-alpine
|
image: postgres:{{postgres_database_version}}-alpine
|
||||||
container_name: {{docker_compose_project_name}}-database
|
container_name: {{docker_compose_project_name}}-database
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_PASSWORD={{database_password}}
|
- POSTGRES_PASSWORD={{database_password}}
|
||||||
|
@ -2,4 +2,3 @@ database_instance: "{{ 'central-' + database_type if enable_cen
|
|||||||
database_host: "{{ 'central-' + database_type if enable_central_database | bool else 'database' }}"
|
database_host: "{{ 'central-' + database_type if enable_central_database | bool else 'database' }}"
|
||||||
database_name: "{{ docker_compose_project_name }}"
|
database_name: "{{ docker_compose_project_name }}"
|
||||||
database_username: "{{ docker_compose_project_name }}"
|
database_username: "{{ docker_compose_project_name }}"
|
||||||
database_version: "{{ postgres_default_version }}"
|
|
Loading…
x
Reference in New Issue
Block a user