Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

31 lines
927 B

  1. #jinja2: lstrip_blocks: "True"
  2. # c.f. https://github.com/matrix-org/synapse/pull/4662
  3. [Unit]
  4. Description=Synapse Matrix Worker
  5. AssertPathExists={{matrix_synapse_config_dir_path }}/worker.%i.yaml
  6. After=matrix-synapse.service
  7. BindsTo=matrix-synapse.service
  8. [Service]
  9. Type=simple
  10. # Intentional delay, so that the homeserver (we likely depend on) can manage to start.
  11. ExecStartPre=/bin/sleep 5
  12. # systemd ftw 🤦‍♂️
  13. # https://github.com/systemd/systemd/issues/14895#issuecomment-594123923
  14. ExecStart=/bin/sh -c "WORKER=%i; WORKER=$${WORKER%%:*}; \
  15. exec /usr/bin/docker exec \
  16. --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \
  17. matrix-synapse \
  18. python -m synapse.app.$${WORKER} -c /data/homeserver.yaml -c /data/worker.%i.yaml"
  19. ExecStop=/usr/bin/docker exec matrix-synapse pkill -f %i
  20. KillMode=process
  21. Restart=always
  22. RestartSec=10
  23. SyslogIdentifier=matrix-synapse-%i
  24. [Install]
  25. WantedBy=matrix-synapse.service