最後活躍 1 month ago

compose.yml 原始檔案
1services:
2 element:
3 image: vectorim/element-web
4 container_name: element_web
5 restart: unless-stopped
6 configs:
7 - source: element_config
8 target: /app/config.json
9 mode: "0444"
10 networks:
11 - proxy
12 labels:
13 - traefik.enable=true
14 - traefik.http.services.element.loadbalancer.server.port=80
15 - traefik.http.routers.element.entrypoints=https
16 - traefik.http.routers.element.rule=Host(`${FQDN_ELEMENT}`)
17 continuwuation:
18 image: forgejo.ellis.link/continuwuation/continuwuity:latest
19 container_name: continuwuation
20 init: true
21 restart: unless-stopped
22 command: /sbin/conduwuit
23 volumes:
24 - continuwuation_db:/var/lib/continuwuity
25 configs:
26 - source: resolv_conf
27 target: /etc/resolv.confg
28 mode: "0400"
29 environment:
30 RUST_BACKTRACE: full
31 CONTINUWUITY_SERVER_NAME: ${FQDN_MATRIX}
32 CONTINUWUITY_DATABASE_PATH: /var/lib/continuwuity
33 CONTINUWUITY_ADDRESS: 0.0.0.0
34 CONTINUWUITY_ALLOW_REGISTRATION: false
35 CONTINUWUITY_ALLOW_FEDERATION: true
36 CONTINUWUITY_ALLOW_CHECK_FOR_UPDATES: true
37 CONTINUWUITY_TRUSTED_SERVERS: '["matrix.org"]'
38 CONDUWUIT_TRUSTED_PROXIES: 127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
39 CONTINUWUITY_PORT: 8008 # This must match with traefik's loadbalancer label
40 CONTINUWUITY_WELL_KNOWN: |
41 {
42 client=https://${FQDN_MATRIX},
43 server=${FQDN_MATRIX}:443
44 }
45 networks:
46 - proxy
47 labels:
48 - traefik.enable=true
49 - traefik.http.services.continuwuation.loadbalancer.server.port=8008
50 - traefik.http.routers.continuwuation.entrypoints=https
51 - traefik.http.routers.continuwuation.rule=Host(`${FQDN_MATRIX}`)
52 - traefik.http.routers.continuwuation.middlewares=cors-headers@docker,matrix-headers@docker
53 - traefik.http.middlewares.cors-headers.headers.accessControlAllowOriginList=*
54 - traefik.http.middlewares.cors-headers.headers.accessControlAllowHeaders=Origin,
55 X-Requested-With, Content-Type, Accept, Authorization
56 - traefik.http.middlewares.cors-headers.headers.accessControlAllowMethods=GET,
57 POST, PUT, DELETE, OPTIONS
58 - traefik.http.middlewares.matrix-headers.headers.customrequestheaders.X-Forwarded-Proto=https
59volumes:
60 continuwuation_db: {}
61configs:
62 resolv_conf:
63 content: |
64 nameserver 1.0.0.1
65 nameserver 1.1.1.1
66 element_config:
67 content: |
68 {
69 "default_server_config": {
70 "m.homeserver": {
71 "base_url": "https://${FQDN_MATRIX}"
72 },
73 "m.identity_server": {
74 "base_url": "https://vector.im"
75 }
76 },
77 "disable_custom_urls": false,
78 "disable_guests": false,
79 "disable_login_language_selector": false,
80 "disable_3pid_login": false,
81 "brand": "Element",
82 "integrations_ui_url": "http://localhost:8011/element",
83 "integrations_rest_url": "http://localhost:8011/api/v1/scalar",
84 "integrations_widgets_urls": [
85 "http://localhost:8011/widgets"
86 ],
87 "bug_report_endpoint_url": "https://element.io/bugreports/submit",
88 "defaultCountryCode": "GB",
89 "showLabsSettings": false,
90 "features": {
91 "feature_pinning": true
92 },
93 "default_federate": true,
94 "default_theme": "light",
95 "roomDirectory": {
96 "servers": [
97 "matrix.org"
98 ]
99 },
100 "piwik": false,
101 "enable_presence_by_hs_url": {
102 "https://matrix.org": false,
103 "https://matrix-client.matrix.org": false
104 },
105 "settingDefaults": {
106 "breadcrumbs": true
107 },
108 "jitsi": {
109 "preferredDomain": "jitsi.riot.im"
110 }
111 }
112networks:
113 proxy:
114 external: true
115