| @@ -21,11 +21,11 @@ For a lot more generic questions and answers, see the [matrix.org FAQ](https://m | |||||
| [Matrix](https://matrix.org/) is a new type of realtime communication (chat) network, the closest analogy to which is probably "email". | [Matrix](https://matrix.org/) is a new type of realtime communication (chat) network, the closest analogy to which is probably "email". | ||||
| You don't just use the "email" protocols (SMTP, POP3, IMAP) directly though. There's a some *server* somewhere which stores your data (`@gmail.com`, `@yahoo.com`, `@hotmail.com`, `@your-company.com`) and you access using these "email" protocol using use some *client* program (Outlook, Thunderbird, some website, etc). | |||||
| You don't just use the "email" protocols (SMTP, POP3, IMAP) directly though. There's a *server* somewhere which stores your data (`@gmail.com`, `@yahoo.com`, `@hotmail.com`, `@your-company.com`) and you access it by using these "email" protocols via some *client* program (Outlook, Thunderbird, some website, etc). | |||||
| In the world of the Matrix chat protocol, there are various client programs. The first and currently most full-featured one is called [Element](https://element.io/) (used to be called Riot.im and Vector.im in the past). There are [many other clients](https://matrix.org/clients/). You can switch clients as much as you want until you find the one that is right for you on a given platform (you may use Element on your desktop, but Fluffychat on your phone, etc). | In the world of the Matrix chat protocol, there are various client programs. The first and currently most full-featured one is called [Element](https://element.io/) (used to be called Riot.im and Vector.im in the past). There are [many other clients](https://matrix.org/clients/). You can switch clients as much as you want until you find the one that is right for you on a given platform (you may use Element on your desktop, but Fluffychat on your phone, etc). | ||||
| Matrix is also like email due to the fact that are many servers around the world which can all talk to each other (you can send email from `@gmail.com` addresses to `@yahoo.com` and `@hotmail.com` addresses). It's the same with Matrix (`@bob:his-domain.com` can talk to `@alice:her-domain.org`). | |||||
| Matrix is also like email due to the fact that there are many servers around the world which can all talk to each other (you can send email from `@gmail.com` addresses to `@yahoo.com` and `@hotmail.com` addresses). It's the same with Matrix (`@bob:his-domain.com` can talk to `@alice:her-domain.org`). | |||||
| If someone else is hosting your Matrix server (you being `@user:matrix.org` or some other public server like this), all you need is a Matrix client program, like Element. | If someone else is hosting your Matrix server (you being `@user:matrix.org` or some other public server like this), all you need is a Matrix client program, like Element. | ||||
| @@ -37,11 +37,11 @@ In short: | |||||
| - Element is a client program you can use to participate on the Matrix chat network via some server (yours or someone else's). There are also [many other client programs](https://matrix.org/clients/). | - Element is a client program you can use to participate on the Matrix chat network via some server (yours or someone else's). There are also [many other client programs](https://matrix.org/clients/). | ||||
| - Synapse is a server program you can use to host your very own Matrix server. | - Synapse is a server program you can use to host your very own Matrix server. | ||||
| This FAQ here mostly focuses on installing Matrix services using the Ansible automation tool. You can learn much more about Matrix in the [matrix.org FAQ](https://matrix.org/faq/). | |||||
| This FAQ here mostly focuses on installing various Matrix services using the Ansible automation tool. You can learn much more about Matrix in the [matrix.org FAQ](https://matrix.org/faq/). | |||||
| ## People I wish to talk to are not on Matrix. Can I talk to them? | ## People I wish to talk to are not on Matrix. Can I talk to them? | ||||
| You most likely can. Besides Matrix-native chats, Matrix also supports this concept of "bridging", which allows you to plug other networks into it. | |||||
| You most likely can. Besides Matrix-native chats, Matrix also supports the concept of "bridging", which allows you to plug other networks into it. | |||||
| This Ansible playbook can help you install [tens of bridges for various networks](configuring-playbook.md#bridging-other-networks). | This Ansible playbook can help you install [tens of bridges for various networks](configuring-playbook.md#bridging-other-networks). | ||||
| @@ -82,9 +82,9 @@ To learn more, see our [dedicated Ansible documentation page](ansible.md). | |||||
| ### Why use this playbook and not install Synapse and other things manually? | ### Why use this playbook and not install Synapse and other things manually? | ||||
| There's various guides telling you how easy it is to install [Synapse](https://github.com/matrix-org/synapse). | |||||
| There are various guides telling you how easy it is to install [Synapse](https://github.com/matrix-org/synapse). | |||||
| Reading this Ansible playbook's documentation, you may also be thinking: | |||||
| Reading the documentation of this Ansible playbook, you may also be thinking: | |||||
| > I don't know what [Ansible](https://www.ansible.com/) is. I don't know what [Docker](https://www.docker.com/) is. This looks more complicated. | > I don't know what [Ansible](https://www.ansible.com/) is. I don't know what [Docker](https://www.docker.com/) is. This looks more complicated. | ||||
| @@ -173,7 +173,7 @@ It also lets us have a unified setup which runs the same across various supporte | |||||
| ### Is Docker a hard requirement? | ### Is Docker a hard requirement? | ||||
| Yes. See [Why don't you use Podman instead of Docker?](#is-docker-a-hard-requirement) for why we're not using another container runtime. | |||||
| Yes. See [Why don't you use Podman instead of Docker?](#why-dont-you-use-podman-instead-of-docker) for why we're not using another container runtime. | |||||
| All of our services run in containers. It's how we achieve predictability and also how we support tens of different services across lots of distros. | All of our services run in containers. It's how we achieve predictability and also how we support tens of different services across lots of distros. | ||||
| @@ -203,7 +203,7 @@ This largely depends on your use case. It's not so much the number of users that | |||||
| Federated rooms with lots of history and containing hundreds of other servers are very heavy CPU-wise and memory-wise. | Federated rooms with lots of history and containing hundreds of other servers are very heavy CPU-wise and memory-wise. | ||||
| You can probably use a 1 CPU + 1GB memory server to host hundreds of local users just fine, but as soon as of them joins a federated room like `#matrix:matrix.org` (Matrix HQ) or some IRC-bridged room (say `##linux`), your server will get the need for a lot more power (at least 2GB RAM, etc). | |||||
| You can probably use a 1 CPU + 1GB memory server to host hundreds of local users just fine, but as soon as one of them joins a federated room like `#matrix:matrix.org` (Matrix HQ) or some IRC-bridged room (say `##linux`), your server will get the need for a lot more power (at least 2GB RAM, etc). | |||||
| Running Matrix on a server with 1GB of memory is possible (especially if you disable some not-so-important services). See [How do I optimize this setup for a low-power server?](#how-do-i-optimize-this-setup-for-a-low-power-server). | Running Matrix on a server with 1GB of memory is possible (especially if you disable some not-so-important services). See [How do I optimize this setup for a low-power server?](#how-do-i-optimize-this-setup-for-a-low-power-server). | ||||
| @@ -220,7 +220,7 @@ If your distro runs within an [LXC container](https://linuxcontainers.org/), you | |||||
| ### Why install my server at matrix.DOMAIN and not at the base DOMAIN? | ### Why install my server at matrix.DOMAIN and not at the base DOMAIN? | ||||
| It's the same with email servers. Your email address is likely `name@company.com`, not `name@mail.company.com`, even though it's really `mail.company.com` that is really handling your data for `@company.com` email to work. | |||||
| It's the same with email servers. Your email address is likely `name@company.com`, not `name@mail.company.com`, even though it's `mail.company.com` that is really handling your data for `@company.com` email to work. | |||||
| Using a separate domain name is easier to manage (although it's a little hard to get right at first) and keeps your Matrix server isolated from your website (if you have one), from your email server (if you have one), etc. | Using a separate domain name is easier to manage (although it's a little hard to get right at first) and keeps your Matrix server isolated from your website (if you have one), from your email server (if you have one), etc. | ||||
| @@ -230,7 +230,7 @@ If you'd really like to install Matrix services directly on the base domain, see | |||||
| ### I don't control anything on the base domain and can't set up delegation to matrix.DOMAIN. What do I do? | ### I don't control anything on the base domain and can't set up delegation to matrix.DOMAIN. What do I do? | ||||
| If you're not in control of your base domain (or server handling it) at all, you can take a look at [How do I install on matrix.DOMAIN without involving the base DOMAIN?](#how-do-i-install-on-matrixdomain-without-involving-the-base-domain) | |||||
| If you're not in control of your base domain (or the server handling it) at all, you can take a look at [How do I install on matrix.DOMAIN without involving the base DOMAIN?](#how-do-i-install-on-matrixdomain-without-involving-the-base-domain) | |||||
| ### I can't set up HTTPS on the base domain. How will I get Matrix federating? | ### I can't set up HTTPS on the base domain. How will I get Matrix federating? | ||||
| @@ -345,7 +345,7 @@ Refer to both of these for inspiration. Still, as mentioned in [Configuring the | |||||
| ### I'd like to adjust some configuration which doesn't have a corresponding variable. How do I do it? | ### I'd like to adjust some configuration which doesn't have a corresponding variable. How do I do it? | ||||
| The playbook doesn't aim to expose all configuration settings for all services using variables. | The playbook doesn't aim to expose all configuration settings for all services using variables. | ||||
| Doing so would amount is to hundreds of variables that we have to create and maintain. | |||||
| Doing so would amount to hundreds of variables that we have to create and maintain. | |||||
| Instead, we only try to make some important basics configurable using dedicated variables you can see in each role. | Instead, we only try to make some important basics configurable using dedicated variables you can see in each role. | ||||
| See [What configuration variables are available?](#what-configuration-variables-are-available). | See [What configuration variables are available?](#what-configuration-variables-are-available). | ||||
| @@ -398,9 +398,9 @@ Available service names can be seen by doing `ls /etc/systemd/system/matrix*.ser | |||||
| Some services also log to files in `/matrix/*/data/..`, but we're slowly moving away from that. | Some services also log to files in `/matrix/*/data/..`, but we're slowly moving away from that. | ||||
| We also disable Docker logging, so you can't use `docker logs matrix-*` either. We do this to prevent useless double (or even tripple) logging and to avoid having to rotate log files. | |||||
| We also disable Docker logging, so you can't use `docker logs matrix-*` either. We do this to prevent useless double (or even triple) logging and to avoid having to rotate log files. | |||||
| We just simply delegate logging to journald and it takes care of persistenec and expiring old data. | |||||
| We just simply delegate logging to journald and it takes care of persistence and expiring old data. | |||||
| Also see: [How long do systemd/journald logs persist for?](#how-long-do-systemdjournald-logs-persist-for) | Also see: [How long do systemd/journald logs persist for?](#how-long-do-systemdjournald-logs-persist-for) | ||||
| @@ -438,7 +438,7 @@ If your previous installation is done in some other way (not using this Ansible | |||||
| ### How do I back up the data on my server? | ### How do I back up the data on my server? | ||||
| We haven't document this properly yet, but the general advice is to: | |||||
| We haven't documented this properly yet, but the general advice is to: | |||||
| - back up Postgres by making a database dump. See [Backing up PostgreSQL](maintenance-postgres.md#backing-up-postgresql) | - back up Postgres by making a database dump. See [Backing up PostgreSQL](maintenance-postgres.md#backing-up-postgresql) | ||||
| @@ -66,6 +66,7 @@ matrix_host_command_chown: "/usr/bin/env chown" | |||||
| matrix_host_command_fusermount: "/usr/bin/env fusermount" | matrix_host_command_fusermount: "/usr/bin/env fusermount" | ||||
| matrix_host_command_openssl: "/usr/bin/env openssl" | matrix_host_command_openssl: "/usr/bin/env openssl" | ||||
| matrix_host_command_systemctl: "/usr/bin/env systemctl" | matrix_host_command_systemctl: "/usr/bin/env systemctl" | ||||
| matrix_host_command_sh: "/usr/bin/env sh" | |||||
| matrix_ntpd_package: "ntp" | matrix_ntpd_package: "ntp" | ||||
| matrix_ntpd_service: "{{ 'ntpd' if ansible_os_family == 'RedHat' or ansible_distribution == 'Archlinux' else 'ntp' }}" | matrix_ntpd_service: "{{ 'ntpd' if ansible_os_family == 'RedHat' or ansible_distribution == 'Archlinux' else 'ntp' }}" | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-bot-matrix-reminder-bot | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-bot-matrix-reminder-bot | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-bot-matrix-reminder-bot 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-bot-matrix-reminder-bot 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-bot-matrix-reminder-bot \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-bot-matrix-reminder-bot \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -32,8 +32,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-bot-matrix-rem | |||||
| {{ matrix_bot_matrix_reminder_bot_docker_image }} \ | {{ matrix_bot_matrix_reminder_bot_docker_image }} \ | ||||
| -c "matrix-reminder-bot /config/config.yaml" | -c "matrix-reminder-bot /config/config.yaml" | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-bot-matrix-reminder-bot | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-bot-matrix-reminder-bot | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-bot-matrix-reminder-bot 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-bot-matrix-reminder-bot 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-bot-matrix-reminder-bot | SyslogIdentifier=matrix-bot-matrix-reminder-bot | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-appservice-discord | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-appservice-discord | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-discord 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-discord 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -35,8 +35,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-appservice-dis | |||||
| {{ matrix_appservice_discord_docker_image }} \ | {{ matrix_appservice_discord_docker_image }} \ | ||||
| node /build/src/discordas.js -p 9005 -c /cfg/config.yaml -f /cfg/registration.yaml | node /build/src/discordas.js -p 9005 -c /cfg/config.yaml -f /cfg/registration.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-appservice-discord | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-appservice-discord | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-discord 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-discord 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-appservice-discord | SyslogIdentifier=matrix-appservice-discord | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-appservice-irc | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-appservice-irc | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-irc 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-irc 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -36,8 +36,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-appservice-irc | |||||
| {{ matrix_appservice_irc_docker_image }} \ | {{ matrix_appservice_irc_docker_image }} \ | ||||
| -c 'node app.js -c /config/config.yaml -f /config/registration.yaml -p 9999' | -c 'node app.js -c /config/config.yaml -f /config/registration.yaml -p 9999' | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-appservice-irc | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-appservice-irc | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-irc 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-irc 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-appservice-irc | SyslogIdentifier=matrix-appservice-irc | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-appservice-slack | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-appservice-slack | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-slack 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-slack 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -35,8 +35,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-appservice-sla | |||||
| {{ matrix_appservice_slack_docker_image }} \ | {{ matrix_appservice_slack_docker_image }} \ | ||||
| node app.js -p {{matrix_appservice_slack_matrix_port}} -c /config/config.yaml -f /config/slack-registration.yaml | node app.js -p {{matrix_appservice_slack_matrix_port}} -c /config/config.yaml -f /config/slack-registration.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-appservice-slack | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-appservice-slack | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-slack 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-slack 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-appservice-slack | SyslogIdentifier=matrix-appservice-slack | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-appservice-webhooks | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-appservice-webhooks | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-webhooks 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-webhooks 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -35,8 +35,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-appservice-web | |||||
| {{ matrix_appservice_webhooks_docker_image }} \ | {{ matrix_appservice_webhooks_docker_image }} \ | ||||
| node index.js -p {{ matrix_appservice_webhooks_matrix_port }} -c /config/config.yaml -f /config/webhooks-registration.yaml | node index.js -p {{ matrix_appservice_webhooks_matrix_port }} -c /config/config.yaml -f /config/webhooks-registration.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-appservice-webhooks | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-appservice-webhooks | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-appservice-webhooks 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-appservice-webhooks 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-appservice-webhooks | SyslogIdentifier=matrix-appservice-webhooks | ||||
| @@ -13,8 +13,13 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mautrix-facebook | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mautrix-facebook | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-facebook 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-facebook 2>/dev/null' | |||||
| # This bridge uses another mechanism for migrations now (migrations happen automatically during regular startup), | |||||
| # so going forward, running this alembic stuff will not necessary. | |||||
| # People who are upgrading from an older version of the bridge should go through this migration | |||||
| # first though, so we're keeping it around for now. | |||||
| ExecStartPre={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-facebook-db \ | ExecStartPre={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-facebook-db \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | ||||
| @@ -41,8 +46,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-facebo | |||||
| {{ matrix_mautrix_facebook_docker_image }} \ | {{ matrix_mautrix_facebook_docker_image }} \ | ||||
| python3 -m mautrix_facebook -c /config/config.yaml | python3 -m mautrix_facebook -c /config/config.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mautrix-facebook | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mautrix-facebook | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-facebook 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-facebook 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mautrix-facebook | SyslogIdentifier=matrix-mautrix-facebook | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mautrix-hangouts matrix-mautrix-hangouts-db | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mautrix-hangouts matrix-mautrix-hangouts-db | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-hangouts matrix-mautrix-hangouts-db 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-hangouts matrix-mautrix-hangouts-db 2>/dev/null' | |||||
| ExecStartPre={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-hangouts-db \ | ExecStartPre={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-hangouts-db \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | ||||
| @@ -44,8 +44,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-hangou | |||||
| {{ matrix_mautrix_hangouts_docker_image }} \ | {{ matrix_mautrix_hangouts_docker_image }} \ | ||||
| python3 -m mautrix_hangouts -c /config/config.yaml | python3 -m mautrix_hangouts -c /config/config.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mautrix-hangouts | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mautrix-hangouts | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-hangouts 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-hangouts 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mautrix-hangouts | SyslogIdentifier=matrix-mautrix-hangouts | ||||
| @@ -15,8 +15,8 @@ Wants={{ service }} | |||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mautrix-signal-daemon | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mautrix-signal-daemon | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-signal-daemon 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-signal-daemon 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -30,8 +30,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-signal | |||||
| -v {{ matrix_mautrix_signal_daemon_path }}:/signald:z \ | -v {{ matrix_mautrix_signal_daemon_path }}:/signald:z \ | ||||
| {{ matrix_mautrix_signal_daemon_docker_image }} | {{ matrix_mautrix_signal_daemon_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mautrix-signal-daemon | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mautrix-signal-daemon | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-signal-daemon 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-signal-daemon 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| @@ -14,8 +14,8 @@ Wants={{ service }} | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mautrix-signal | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mautrix-signal | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-signal 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-signal 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -37,8 +37,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-signal | |||||
| {{ matrix_mautrix_signal_docker_image }} \ | {{ matrix_mautrix_signal_docker_image }} \ | ||||
| python3 -m mautrix_signal -c /config/config.yaml | python3 -m mautrix_signal -c /config/config.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mautrix-signal | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mautrix-signal | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-signal 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-signal 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mautrix-telegram | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mautrix-telegram | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-telegram 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-telegram 2>/dev/null' | |||||
| ExecStartPre={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-telegram-db \ | ExecStartPre={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-telegram-db \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \ | ||||
| @@ -44,8 +44,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-telegr | |||||
| {{ matrix_mautrix_telegram_docker_image }} \ | {{ matrix_mautrix_telegram_docker_image }} \ | ||||
| python3 -m mautrix_telegram -c /config/config.yaml | python3 -m mautrix_telegram -c /config/config.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mautrix-telegram | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mautrix-telegram | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-telegram 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-telegram 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mautrix-telegram | SyslogIdentifier=matrix-mautrix-telegram | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mautrix-whatsapp | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mautrix-whatsapp | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-whatsapp 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-whatsapp 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -33,8 +33,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mautrix-whatsa | |||||
| {{ matrix_mautrix_whatsapp_docker_image }} \ | {{ matrix_mautrix_whatsapp_docker_image }} \ | ||||
| /usr/bin/mautrix-whatsapp -c /config/config.yaml -r /config/registration.yaml | /usr/bin/mautrix-whatsapp -c /config/config.yaml -r /config/registration.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mautrix-whatsapp | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mautrix-whatsapp | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mautrix-whatsapp 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mautrix-whatsapp 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mautrix-whatsapp | SyslogIdentifier=matrix-mautrix-whatsapp | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-discord | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-discord | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-discord 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-discord 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -33,8 +33,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mx-puppet-disc | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mx_puppet_discord_docker_image }} | {{ matrix_mx_puppet_discord_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-discord | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-discord | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-discord 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-discord 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mx-puppet-discord | SyslogIdentifier=matrix-mx-puppet-discord | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-instagram | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-instagram | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-instagram 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-instagram 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -33,8 +33,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mx-puppet-inst | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mx_puppet_instagram_docker_image }} | {{ matrix_mx_puppet_instagram_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-instagram | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-instagram | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-instagram 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-instagram 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mx-puppet-instagram | SyslogIdentifier=matrix-mx-puppet-instagram | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-skype | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-skype | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-skype 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-skype 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -33,8 +33,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mx-puppet-skyp | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mx_puppet_skype_docker_image }} | {{ matrix_mx_puppet_skype_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-skype | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-skype | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-skype 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-skype 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mx-puppet-skype | SyslogIdentifier=matrix-mx-puppet-skype | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-slack | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-slack | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-slack 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-slack 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -36,8 +36,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mx-puppet-slac | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mx_puppet_slack_docker_image }} | {{ matrix_mx_puppet_slack_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-slack | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-slack | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-slack 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-slack 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mx-puppet-slack | SyslogIdentifier=matrix-mx-puppet-slack | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-steam | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-steam | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-steam 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-steam 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -33,8 +33,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mx-puppet-stea | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mx_puppet_steam_docker_image }} | {{ matrix_mx_puppet_steam_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-steam | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-steam | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-steam 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-steam 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mx-puppet-steam | SyslogIdentifier=matrix-mx-puppet-steam | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-twitter | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-twitter | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-twitter 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-twitter 2>/dev/null' | |||||
| # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | # Intentional delay, so that the homeserver (we likely depend on) can manage to start. | ||||
| ExecStartPre={{ matrix_host_command_sleep }} 5 | ExecStartPre={{ matrix_host_command_sleep }} 5 | ||||
| @@ -36,8 +36,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mx-puppet-twit | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mx_puppet_twitter_docker_image }} | {{ matrix_mx_puppet_twitter_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mx-puppet-twitter | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mx-puppet-twitter | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mx-puppet-twitter 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mx-puppet-twitter 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mx-puppet-twitter | SyslogIdentifier=matrix-mx-puppet-twitter | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-client-element | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-client-element | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-client-element 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-client-element 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-client-element \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-client-element \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -35,8 +35,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-client-element | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_client_element_docker_image }} | {{ matrix_client_element_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-client-element | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-client-element | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-client-element 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-client-element 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-client-element | SyslogIdentifier=matrix-client-element | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-corporal | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-corporal | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-corporal 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-corporal 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-corporal \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-corporal \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -34,8 +34,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-corporal \ | |||||
| {{ matrix_corporal_docker_image }} \ | {{ matrix_corporal_docker_image }} \ | ||||
| /matrix-corporal -config=/etc/matrix-corporal/config.json | /matrix-corporal -config=/etc/matrix-corporal/config.json | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-corporal | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-corporal | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-corporal 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-corporal 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-corporal | SyslogIdentifier=matrix-corporal | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-coturn | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-coturn | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-coturn 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-coturn 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-coturn \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-coturn \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -42,8 +42,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-coturn \ | |||||
| {{ matrix_coturn_docker_image }} \ | {{ matrix_coturn_docker_image }} \ | ||||
| -c /turnserver.conf | -c /turnserver.conf | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-coturn | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-coturn | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-coturn 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-coturn 2>/dev/null' | |||||
| # This only reloads certificates (not other configuration). | # This only reloads certificates (not other configuration). | ||||
| # See: https://github.com/coturn/coturn/pull/236 | # See: https://github.com/coturn/coturn/pull/236 | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-dimension | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-dimension | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-dimension 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-dimension 2>/dev/null' | |||||
| # Fixup database ownership if it got changed somehow (during a server migration, etc.) | # Fixup database ownership if it got changed somehow (during a server migration, etc.) | ||||
| {% if matrix_dimension_database_engine == 'sqlite' %} | {% if matrix_dimension_database_engine == 'sqlite' %} | ||||
| @@ -38,8 +38,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-dimension \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_dimension_docker_image }} | {{ matrix_dimension_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-dimension | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-dimension | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-dimension 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-dimension 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-dimension | SyslogIdentifier=matrix-dimension | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-dynamic-dns | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-dynamic-dns | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-dynamic-dns 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-dynamic-dns 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-dynamic-dns \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-dynamic-dns \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| --network={{ matrix_docker_network }} \ | --network={{ matrix_docker_network }} \ | ||||
| @@ -26,8 +26,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-dynamic-dns \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_dynamic_dns_docker_image }} | {{ matrix_dynamic_dns_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-dynamic-dns | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-dynamic-dns | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-dynamic-dns 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-dynamic-dns 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-dynamic-dns | SyslogIdentifier=matrix-dynamic-dns | ||||
| @@ -8,8 +8,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-email2matrix | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-email2matrix | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-email2matrix 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-email2matrix 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-email2matrix \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-email2matrix \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -24,8 +24,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-email2matrix \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_email2matrix_docker_image }} | {{ matrix_email2matrix_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-email2matrix | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-email2matrix | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-email2matrix 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-email2matrix 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-email2matrix | SyslogIdentifier=matrix-email2matrix | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-jitsi-jicofo | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-jitsi-jicofo | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-jicofo 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-jicofo 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jicofo \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jicofo \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -23,8 +23,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jicofo \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_jitsi_jicofo_docker_image }} | {{ matrix_jitsi_jicofo_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-jitsi-jicofo | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-jitsi-jicofo | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-jicofo 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-jicofo 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-jitsi-jicofo | SyslogIdentifier=matrix-jitsi-jicofo | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-jitsi-jvb | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-jitsi-jvb | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-jvb 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-jvb 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jvb \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jvb \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -32,8 +32,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jvb \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_jitsi_jvb_docker_image }} | {{ matrix_jitsi_jvb_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-jitsi-jvb | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-jitsi-jvb | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-jvb 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-jvb 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-jitsi-jvb | SyslogIdentifier=matrix-jitsi-jvb | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-jitsi-prosody | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-jitsi-prosody | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-prosody 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-prosody 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-prosody \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-prosody \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -24,8 +24,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-prosody | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_jitsi_prosody_docker_image }} | {{ matrix_jitsi_prosody_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-jitsi-prosody | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-jitsi-prosody | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-prosody 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-prosody 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-jitsi-prosody | SyslogIdentifier=matrix-jitsi-prosody | ||||
| @@ -10,8 +10,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-jitsi-web | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-jitsi-web | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-web 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-web 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-web \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-web \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -27,8 +27,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-web \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_jitsi_web_docker_image }} | {{ matrix_jitsi_web_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-jitsi-web | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-jitsi-web | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-web 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-web 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-jitsi-web | SyslogIdentifier=matrix-jitsi-web | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-ma1sd | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-ma1sd | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-ma1sd 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-ma1sd 2>/dev/null' | |||||
| # ma1sd writes an SQLite shared library (libsqlitejdbc.so) to /tmp and executes it from there, | # ma1sd writes an SQLite shared library (libsqlitejdbc.so) to /tmp and executes it from there, | ||||
| # so /tmp needs to be mounted with an exec option. | # so /tmp needs to be mounted with an exec option. | ||||
| @@ -38,8 +38,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-ma1sd \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_ma1sd_docker_image }} | {{ matrix_ma1sd_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-ma1sd | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-ma1sd | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-ma1sd 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-ma1sd 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-ma1sd | SyslogIdentifier=matrix-ma1sd | ||||
| @@ -8,8 +8,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-mailer | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-mailer | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mailer 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mailer 2>/dev/null' | |||||
| # --hostname gives us a friendlier hostname than the default. | # --hostname gives us a friendlier hostname than the default. | ||||
| # The real hostname is passed via a `HOSTNAME` environment variable though. | # The real hostname is passed via a `HOSTNAME` environment variable though. | ||||
| @@ -28,8 +28,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-mailer \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_mailer_docker_image }} | {{ matrix_mailer_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-mailer | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-mailer | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-mailer 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-mailer 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-mailer | SyslogIdentifier=matrix-mailer | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-nginx-proxy | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-nginx-proxy | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-nginx-proxy 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-nginx-proxy 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-nginx-proxy \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-nginx-proxy \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -47,8 +47,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-nginx-proxy \ | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_nginx_proxy_docker_image }} | {{ matrix_nginx_proxy_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-nginx-proxy | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-nginx-proxy | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-nginx-proxy 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-nginx-proxy 2>/dev/null' | |||||
| ExecReload={{ matrix_host_command_docker }} exec matrix-nginx-proxy /usr/sbin/nginx -s reload | ExecReload={{ matrix_host_command_docker }} exec matrix-nginx-proxy /usr/sbin/nginx -s reload | ||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| @@ -9,7 +9,7 @@ DefaultDependencies=no | |||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} stop matrix-postgres | ExecStartPre=-{{ matrix_host_command_docker }} stop matrix-postgres | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-postgres | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-postgres 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-postgres \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-postgres \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -35,7 +35,7 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-postgres \ | |||||
| {% endfor %} | {% endfor %} | ||||
| ExecStop=-{{ matrix_host_command_docker }} stop matrix-postgres | ExecStop=-{{ matrix_host_command_docker }} stop matrix-postgres | ||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-postgres | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-postgres 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-postgres | SyslogIdentifier=matrix-postgres | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-registration | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-registration | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-registration 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-registration 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-registration \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-registration \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -32,8 +32,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-registration \ | |||||
| {{ matrix_registration_docker_image }} \ | {{ matrix_registration_docker_image }} \ | ||||
| serve | serve | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-registration | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-registration | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-registration 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-registration 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-registration | SyslogIdentifier=matrix-registration | ||||
| @@ -13,8 +13,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-synapse-admin | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-synapse-admin | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-synapse-admin 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-synapse-admin 2>/dev/null' | |||||
| ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-synapse-admin \ | ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-synapse-admin \ | ||||
| --log-driver=none \ | --log-driver=none \ | ||||
| @@ -32,8 +32,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-synapse-admin | |||||
| {% endfor %} | {% endfor %} | ||||
| {{ matrix_synapse_admin_docker_image }} | {{ matrix_synapse_admin_docker_image }} | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-synapse-admin | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-synapse-admin | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-synapse-admin 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-synapse-admin 2>/dev/null' | |||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||
| SyslogIdentifier=matrix-synapse-admin | SyslogIdentifier=matrix-synapse-admin | ||||
| @@ -21,8 +21,8 @@ DefaultDependencies=no | |||||
| [Service] | [Service] | ||||
| Type=simple | Type=simple | ||||
| Environment="HOME={{ matrix_systemd_unit_home_path }}" | Environment="HOME={{ matrix_systemd_unit_home_path }}" | ||||
| ExecStartPre=-{{ matrix_host_command_docker }} kill matrix-synapse | |||||
| ExecStartPre=-{{ matrix_host_command_docker }} rm matrix-synapse | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-synapse 2>/dev/null' | |||||
| ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-synapse 2>/dev/null' | |||||
| {% if matrix_s3_media_store_enabled %} | {% if matrix_s3_media_store_enabled %} | ||||
| # Allow for some time before starting, so that media store can mount. | # Allow for some time before starting, so that media store can mount. | ||||
| # Mounting can happen later too, but if we start writing, | # Mounting can happen later too, but if we start writing, | ||||
| @@ -64,8 +64,8 @@ ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-synapse \ | |||||
| {{ matrix_synapse_docker_image }} \ | {{ matrix_synapse_docker_image }} \ | ||||
| -m synapse.app.homeserver -c /data/homeserver.yaml | -m synapse.app.homeserver -c /data/homeserver.yaml | ||||
| ExecStop=-{{ matrix_host_command_docker }} kill matrix-synapse | |||||
| ExecStop=-{{ matrix_host_command_docker }} rm matrix-synapse | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-synapse 2>/dev/null' | |||||
| ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-synapse 2>/dev/null' | |||||
| ExecReload={{ matrix_host_command_docker }} exec matrix-synapse /bin/sh -c 'kill -HUP 1' | ExecReload={{ matrix_host_command_docker }} exec matrix-synapse /bin/sh -c 'kill -HUP 1' | ||||
| Restart=always | Restart=always | ||||
| RestartSec=30 | RestartSec=30 | ||||