Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
20 KiB
Container images used by the playbook
This page summarizes the container (Docker) images used by the playbook when setting up your server.
We try to stick to official images (provided by their respective projects) as much as possible.
Homeserver
Service | Container image | Default? | Description |
---|---|---|---|
Synapse | element-hq/synapse | ✓ | Storing your data and managing your presence in the Matrix network |
Conduit | matrixconduit/matrix-conduit | x | Storing your data and managing your presence in the Matrix network. Conduit is a lightweight open-source server implementation of the Matrix Specification with a focus on easy setup and low system requirements |
Dendrite | matrixdotorg/dendrite-monolith | x | Storing your data and managing your presence in the Matrix network. Dendrite is a second-generation Matrix homeserver written in Go, an alternative to Synapse. |
Clients
Service | Container image | Default? | Description |
---|---|---|---|
Element | vectorim/element-web | ✓ | Web UI, which is configured to connect to your own Synapse server by default |
Hydrogen | element-hq/hydrogen-web | x | Lightweight Matrix client with legacy and mobile browser support |
Cinny | ajbura/cinny | x | Simple, elegant and secure web client |
SchildiChat | etke.cc/schildichat-web | x | Based on Element, with a more traditional instant messaging experience |
Server Components
Service | Container image | Default? | Description |
---|---|---|---|
PostgreSQL | postgres | ✓ | Database for Synapse. Using an external PostgreSQL server is also possible. |
Coturn | coturn/coturn | ✓ | STUN/TURN server for WebRTC audio/video calls |
Traefik | Traefik | ✓ | Web server, listening on ports 80, 443 and 8448 - standing in front of all the other services. Using your own webserver is possible |
Let's Encrypt | certbot/certbot | ✓ | The certbot tool for obtaining SSL certificates from Let's Encrypt |
ma1sd | ma1uta/ma1sd | x | Matrix Identity Server |
Exim | devture/exim-relay | ✓ | Mail server, through which all Matrix services send outgoing email (can be configured to relay through another SMTP server) |
ddclient | linuxserver/ddclient | x | Update dynamic DNS entries for accounts on Dynamic DNS Network Service Provider |
Sygnal | matrixdotorg/sygnal | x | Reference Push Gateway for Matrix |
ntfy | binwiederhier/ntfy | x | Self-hosted, UnifiedPush-compatible push notifications server |
Authentication
Service | Container image | Default? | Description |
---|---|---|---|
matrix-synapse-rest-auth | (N/A) | x | REST authentication password provider module |
matrix-synapse-shared-secret-auth | (N/A) | x | Password provider module |
matrix-synapse-ldap3 (advanced) | (N/A) | x | LDAP Auth password provider module |
matrix-ldap-registration-proxy | activism.international/matrix_ldap_registration_proxy | x | A proxy that handles Matrix registration requests and forwards them to LDAP. |
matrix-registration | zeratax/matrix-registration | x | A simple python application to have a token based Matrix registration |
Matrix User Verification Service (UVS) | matrixdotorg/matrix-user-verification-service | x | Service to verify details of a user based on an Open ID token |
File Storage
Service | Container image | Default? | Description |
---|---|---|---|
Goofys | ewoutp/goofys | x | Amazon S3 (or other S3-compatible object store) storage for Synapse's content repository (media_store ) files |
synapse-s3-storage-provider | (N/A) | x | Amazon S3 (or other S3-compatible object store) storage for Synapse's content repository (media_store ) files |
matrix-media-repo | t2bot/matrix-media-repo | x | matrix-media-repo is a highly customizable multi-domain media repository for Matrix. Intended for medium to large deployments, this media repo de-duplicates media while being fully compliant with the specification. |
Bridges
Bots
Service | Container image | Default? | Description |
---|---|---|---|
baibot | etke.cc/baibot | x | A bot that exposes the power of AI / Large Language Models to you |
matrix-reminder-bot | anoa/matrix-reminder-bot | x | Bot for scheduling one-off & recurring reminders and alarms |
matrix-registration-bot | moanos/matrix-registration-bot | x | Bot for invitations by creating and managing registration tokens |
maubot | dock.mau.dev/maubot/maubot | x | A plugin-based Matrix bot system |
Honoroit | etke.cc/honoroit | x | A helpdesk bot |
Mjolnir | matrixdotorg/mjolnir | x | A moderation tool for Matrix |
Draupnir | gnuxie/draupnir | x | A moderation tool for Matrix (Fork of Mjolnir) |
Buscarron | etke.cc/buscarron | x | Web forms (HTTP POST) to Matrix |
Administration
Service | Container image | Default? | Description |
---|---|---|---|
matrix-alertmanager-receiver | metio/matrix-alertmanager-receiver | x | Prometheus' Alertmanager client |
Matrix Authentication Service | element-hq/matrix-authentication-service | x | OAuth 2.0 and OpenID Provider server |
synapse-admin | etke.cc/synapse-admin | x | A web UI tool for administrating users and rooms on your Matrix server |
Metrics and Graphs | prom/prometheus | x | Prometheus time-series database server |
Metrics and Graphs | prom/node-exporter | x | Prometheus node-exporter host metrics exporter |
Metrics and Graphs | grafana/grafana | x | Graphing tool that works well with the above two images. Our playbook also adds two dashboards for Synapse and Node Exporter |
Metrics and Graphs | martin-helmich/prometheus-nginxlog-exporter/exporter | x | Addon for Prometheus that gathers access logs from various nginx reverse-proxies |
Borg | (N/A) | x | Backups |
rageshake | matrix-org/rageshake | x | Bug report server |
synapse-usage-exporter | Self-building | x | Export the usage statistics of a Synapse homeserver to be scraped by Prometheus. |
Optional other container images we may use
These services are not part of our default installation, but can be enabled by configuring the playbook (either before the initial installation or any time later):
-
etherpad/etherpad - the Etherpad realtime collaborative text editor that can be used in a Jitsi audio/video call or integrated as a widget into Matrix chat rooms via the Dimension integration manager (optional)
-
devture/matrix-corporal - Matrix Corporal: reconciliator and gateway for a managed Matrix server (optional)
-
jitsi/jicofo - the Jitsi Focus component (optional)
-
jitsi/prosody - the Jitsi Prosody XMPP server component (optional)
-
matrix-org/sliding-sync - the Sliding Sync proxy (optional)
-
etke.cc/rust-synapse-compress-state - synapse-auto-compressor for automatic compression of Synapse's
state_groups
database table (optional) -
cactuscomments/cactus-appservice and joseluisq/static-web-server - Cactus Comments a federated comment system built on Matrix
-
matrixdotorg/pantalaimon - the pantalaimon E2EE aware proxy daemon (optional)
Container images of deprecated / unmaintained services
The list of the deprecated or unmaintained services is available here.
-
turt2live/matrix-appservice-webhooks - the Appservice Webhooks bridge (optional)
-
turt2live/matrix-dimension - the Dimension integration manager (optional)
-
matrixdotorg/go-neb - the Go-NEB bot (optional)
-
matrixgpt/matrix-chatgpt-bot - the matrix-chatgpt-bot for accessing ChatGPT via your favourite Matrix client (optional)
-
mautrix/facebook - the mautrix-facebook bridge to Facebook (optional)
-
mautrix/hangouts - the mautrix-hangouts bridge to Google Hangouts (optional)
-
mautrix/instagram - the mautrix-instagram bridge to Instagram (optional)