124 lines
3.1 KiB
YAML
124 lines
3.1 KiB
YAML
|
---
|
||
|
synapse_svc:
|
||
|
name: synapse
|
||
|
domain: matrix.serguzim.me
|
||
|
docker_host: synapse-admin
|
||
|
port: 80
|
||
|
caddy_extra: |
|
||
|
handle /_matrix/* {
|
||
|
reverse_proxy synapse:8008
|
||
|
}
|
||
|
handle /_synapse/* {
|
||
|
reverse_proxy synapse:8008
|
||
|
}
|
||
|
extra_svcs:
|
||
|
- domain: matrix.serguzim.me:8448
|
||
|
additional_domains:
|
||
|
- serguzim.me:8448
|
||
|
docker_host: synapse
|
||
|
port: 8008
|
||
|
db:
|
||
|
host: "{{ postgres.host }}"
|
||
|
database: synapse
|
||
|
user: "{{ vault_synapse.db.user }}"
|
||
|
pass: "{{ vault_synapse.db.pass }}"
|
||
|
config_path: config
|
||
|
|
||
|
synapse_env:
|
||
|
SYNAPSE_CONFIG_PATH: "{{ ('/', svc.config_path) | path_join }}"
|
||
|
REACT_APP_SERVER: https://matrix.serguzim.me
|
||
|
|
||
|
synapse_yml:
|
||
|
server_name: msrg.cc
|
||
|
pid_file: "{{ (svc.config_path, 'homeserver.pid') | path_join }}"
|
||
|
public_baseurl: https://matrix.serguzim.me/
|
||
|
allow_public_rooms_without_auth: true
|
||
|
allow_public_rooms_over_federation: true
|
||
|
|
||
|
listeners:
|
||
|
- port: 8008
|
||
|
tls: false
|
||
|
type: http
|
||
|
x_forwarded: true
|
||
|
resources:
|
||
|
- names:
|
||
|
- client
|
||
|
- federation
|
||
|
- metrics
|
||
|
compress: false
|
||
|
|
||
|
admin_contact: mailto:{{ admin_email }}
|
||
|
|
||
|
acme:
|
||
|
enabled: false
|
||
|
|
||
|
database:
|
||
|
name: psycopg2
|
||
|
args:
|
||
|
user: "{{ svc.db.user }}"
|
||
|
password: "{{ svc.db.pass }}"
|
||
|
database: "{{ svc.db.database }}"
|
||
|
host: "{{ svc.db.host }}"
|
||
|
cp_min: 5
|
||
|
cp_max: 10
|
||
|
|
||
|
log_config: "{{ (svc.config_path, 'msrg.cc.log.config') | path_join }}"
|
||
|
media_store_path: /media_store
|
||
|
max_upload_size: 500M
|
||
|
enable_registration: false
|
||
|
enable_metrics: true
|
||
|
report_stats: true
|
||
|
|
||
|
macaroon_secret_key: "{{ vault_synapse.macaroon_secret_key }}"
|
||
|
form_secret: "{{ vault_synapse.form_secret }}"
|
||
|
signing_key_path: "{{ (svc.config_path, 'msrg.cc.signing.key') | path_join }}"
|
||
|
|
||
|
trusted_key_servers:
|
||
|
- server_name: matrix.org
|
||
|
suppress_key_server_warning: true
|
||
|
|
||
|
oidc_providers:
|
||
|
- idp_id: auth_serguzim_me
|
||
|
idp_name: auth.serguzim.me
|
||
|
issuer: https://auth.serguzim.me/application/o/matrix_serguzim_me/
|
||
|
client_id: "{{ vault_synapse.oidc_client.id }}"
|
||
|
client_secret: "{{ vault_synapse.oidc_client.secret }}"
|
||
|
scopes:
|
||
|
- openid
|
||
|
- profile
|
||
|
- email
|
||
|
user_mapping_provider:
|
||
|
config:
|
||
|
localpart_template: "{{ '{{ user.preferred_username }}' }}"
|
||
|
display_name_template: "{{ '{{ user.name }}' }}"
|
||
|
|
||
|
email:
|
||
|
smtp_host: mail.serguzim.me
|
||
|
smtp_port: 587
|
||
|
smtp_user: matrix@serguzim.me
|
||
|
smtp_pass: "{{ vault_synapse.mail.pass }}"
|
||
|
require_transport_security: true
|
||
|
notif_from: Matrix <matrix@serguzim.me>
|
||
|
|
||
|
synapse_compose:
|
||
|
watchtower: true
|
||
|
image: ghcr.io/element-hq/synapse:latest
|
||
|
volumes:
|
||
|
- ./config:/config
|
||
|
- media_store:/media_store
|
||
|
file:
|
||
|
services:
|
||
|
synapse-admin:
|
||
|
image: awesometechnologies/synapse-admin
|
||
|
restart: always
|
||
|
labels:
|
||
|
com.centurylinklabs.watchtower.enable: true
|
||
|
env_file:
|
||
|
- service.env
|
||
|
networks:
|
||
|
apps:
|
||
|
aliases:
|
||
|
- synapse-admin
|
||
|
volumes:
|
||
|
media_store:
|