From 9a3448caa310fca3b74886c0fc53517fd387917e Mon Sep 17 00:00:00 2001 From: root Date: Sun, 14 Jan 2024 09:41:58 +0000 Subject: [PATCH] first commit --- docker-compose.yaml | 51 ++++++++++++++++++++++++++++++++++++ element-config.json | 49 ++++++++++++++++++++++++++++++++++ synapse/homeserver.yaml | 58 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 158 insertions(+) create mode 100644 docker-compose.yaml create mode 100644 element-config.json create mode 100644 synapse/homeserver.yaml diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..83af175 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,51 @@ +version: '2.3' +services: + postgres: + image: postgres:14 + restart: unless-stopped + volumes: + - ./postgresdata:/var/lib/postgresql/data + environment: + - POSTGRES_DB=synapse + - POSTGRES_USER=synapse + - POSTGRES_PASSWORD=jgzqnGCq3KY28C + - POSTGRES_INITDB_ARGS=--encoding='UTF8' --lc-collate='C' --lc-ctype='C' + + element: + image: vectorim/element-web:latest + restart: unless-stopped + volumes: + - ./element-config.json:/app/config.json + ports: + - "8701:80" + + + synapse: + image: matrixdotorg/synapse:latest + restart: unless-stopped + ports: + - "8008:8008" + volumes: + - ./synapse:/data + environment: + - POSTGRES_DB=synapse + - POSTGRES_USER=synapse + - POSTGRES_PASSWORD=jgzqnGCq3KY28C + - SYNAPSE_SERVER_NAME=matrix.server-nb.de + - SYNAPSE_REPORT_STATS=no + + synapse-admin: + image: awesometechnologies/synapse-admin:latest + restart: unless-stopped + ports: + - "8703:80" + environment: + - REACT_APP_SERVER="https://matrix.server-nb.de" + + + mautrix-$bridge: + container_name: mautrix-$bridge + image: dock.mau.dev/mautrix/$bridge:latest + restart: unless-stopped + volumes: + - ./mautrix:/data diff --git a/element-config.json b/element-config.json new file mode 100644 index 0000000..dc78dd1 --- /dev/null +++ b/element-config.json @@ -0,0 +1,49 @@ +{ + "default_server_config": { + "m.homeserver": { + "base_url": "https://matrix.server-nb.de", + "server_name": "matrix.server-nb.de" + }, + "m.identity_server": { + "base_url": "https://vector.im" + } + }, + "disable_custom_urls": false, + "disable_guests": false, + "disable_login_language_selector": false, + "disable_3pid_login": false, + "brand": "Element", + "integrations_ui_url": "https://scalar.vector.im/", + "integrations_rest_url": "https://scalar.vector.im/api", + "integrations_widgets_urls": [ + "https://scalar.vector.im/_matrix/integrations/v1", + "https://scalar.vector.im/api", + "https://scalar-staging.vector.im/_matrix/integrations/v1", + "https://scalar-staging.vector.im/api", + "https://scalar-staging.riot.im/scalar/api" + ], + "default_country_code": "DE", + "show_labs_settings": false, + "features": {}, + "default_federate": true, + "default_theme": "light", + "room_directory": { + "servers": ["server-nb.de"] + }, + "enable_presence_by_hs_url": { + "https://matrix.server-nb.de": false, + "https://matrix-client.server-nb.de": false + }, + "setting_defaults": { + "breadcrumbs": true + }, + "jitsi": { + "preferred_domain": "meet.element.io" + }, + "element_call": { + "url": "https://call.element.io", + "participant_limit": 8, + "brand": "Element Call" + }, + "map_style_url": "https://api.maptiler.com/maps/streets/style.json?key=fU3vlMsMn4Jb6dnEIFsx" + } diff --git a/synapse/homeserver.yaml b/synapse/homeserver.yaml new file mode 100644 index 0000000..97cd2d3 --- /dev/null +++ b/synapse/homeserver.yaml @@ -0,0 +1,58 @@ +# Configuration file for Synapse. +# +# This is a YAML file: see [1] for a quick introduction. Note in particular +# that *indentation is important*: all the elements of a list or dictionary +# should have the same indentation. +# +# [1] https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html +# +# For more information on how to configure Synapse, including a complete accounting of +# each option, go to docs/usage/configuration/config_documentation.md or +# https://matrix-org.github.io/synapse/latest/usage/configuration/config_documentation.html +server_name: "matrix.server-nb.de" +pid_file: /data/homeserver.pid +listeners: + - port: 8008 + tls: false + type: http + x_forwarded: true + resources: + - names: [client, federation] + compress: false +database: + name: "psycopg2" + args: + user: "synapse" + password: "jgzqnGCq3KY28C" + database: "synapse" + host: "postgres" + port: "5432" + cp_min: 5 + cp_max: 10 +log_config: "/data/matrix.server-nb.de.log.config" +media_store_path: /data/media_store +registration_shared_secret: "Su.rA7J76@M1:IQLprWD1FXhjm~R0OgLQxThn6_K@Y*WE&V=eq" +report_stats: false +macaroon_secret_key: "=1fWcdA*SW#keHXGg*JDY7RMDXe8g::lw@E8fypf3LgD87,ge7" +form_secret: "jo,.o;cmSAdWsIK-n1@l^h,L.uj4aiMJ:kW@;FVms,zoxZla.5" +signing_key_path: "/data/matrix.server-nb.de.signing.key" +trusted_key_servers: + - server_name: "matrix.org" +enable_registration: true +registration_requires_token: true +suppress_key_server_warning: true +# serve /.well-known/matrix/server to allow federation without seperate port. +serve_server_wellknown: true + +# vim:ft=yaml +email: + smtp_host: mail.host-nb.de + smtp_port: 587 + smtp_user: "relay@mail-nb.de" + smtp_pass: "uqCvDcKUgmd3" + require_transport_security: true + notif_from: "Your Friendly %(app)s homeserver " + app_name: my_branded_matrix_server + enable_notifs: true + invite_client_location: https://matrix-client.server-nb.de +