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.
 
 

47 lines
1.4 KiB

  1. #jinja2: lstrip_blocks: "True"
  2. [Unit]
  3. Description=Matrix mxisd Identity server
  4. {% for service in matrix_mxisd_systemd_required_services_list %}
  5. Requires={{ service }}
  6. After={{ service }}
  7. {% endfor %}
  8. {% for service in matrix_mxisd_systemd_wanted_services_list %}
  9. Wants={{ service }}
  10. {% endfor %}
  11. [Service]
  12. Type=simple
  13. ExecStartPre=-/usr/bin/docker kill matrix-mxisd
  14. ExecStartPre=-/usr/bin/docker rm matrix-mxisd
  15. # mxisd writes an SQLite shared library (libsqlitejdbc.so) to /tmp and executes it from there,
  16. # so /tmp needs to be mounted with an exec option.
  17. ExecStart=/usr/bin/docker run --rm --name matrix-mxisd \
  18. --log-driver=none \
  19. --user={{ matrix_user_uid }}:{{ matrix_user_gid }} \
  20. --cap-drop=ALL \
  21. --read-only \
  22. --tmpfs=/tmp:rw,exec,nosuid,size=10m \
  23. --network={{ matrix_docker_network }} \
  24. {% if matrix_mxisd_container_http_host_bind_port %}
  25. -p {{ matrix_mxisd_container_http_host_bind_port }}:8090 \
  26. {% endif %}
  27. {% if matrix_mxisd_verbose_logging %}
  28. -e MXISD_LOG_LEVEL=debug \
  29. {% endif %}
  30. -v {{ matrix_mxisd_config_path }}:/etc/mxisd:ro \
  31. -v {{ matrix_mxisd_data_path }}:/var/mxisd:rw \
  32. {% for arg in matrix_mxisd_container_extra_arguments %}
  33. {{ arg }} \
  34. {% endfor %}
  35. {{ matrix_mxisd_docker_image }}
  36. ExecStop=-/usr/bin/docker kill matrix-mxisd
  37. ExecStop=-/usr/bin/docker rm matrix-mxisd
  38. Restart=always
  39. RestartSec=30
  40. SyslogIdentifier=matrix-mxisd
  41. [Install]
  42. WantedBy=multi-user.target