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.
45 lines
1.4 KiB
45 lines
1.4 KiB
4 years ago
|
[Unit]
|
||
|
Description=Navidrome Music Server and Streamer compatible with Subsonic/Airsonic
|
||
|
After=remote-fs.target network.target
|
||
|
AssertPathExists={{ nd_root_dir }}/data
|
||
|
|
||
|
[Install]
|
||
|
WantedBy=multi-user.target
|
||
|
|
||
|
[Service]
|
||
|
User={{ nd_user }}
|
||
|
Group={{ nd_user }}
|
||
|
Type=simple
|
||
|
ExecStart={{ nd_root_dir }}/bin/navidrome --configfile "{{ nd_root_dir }}/etc/navidrome.toml"
|
||
|
WorkingDirectory={{ nd_root_dir }}
|
||
|
TimeoutStopSec=20
|
||
|
KillMode=process
|
||
|
Restart=on-failure
|
||
|
|
||
|
# See https://www.freedesktop.org/software/systemd/man/systemd.exec.html
|
||
|
DevicePolicy=closed
|
||
|
NoNewPrivileges=yes
|
||
|
PrivateTmp=yes
|
||
|
PrivateUsers=yes
|
||
|
ProtectControlGroups=yes
|
||
|
ProtectKernelModules=yes
|
||
|
ProtectKernelTunables=yes
|
||
|
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
|
||
|
RestrictNamespaces=yes
|
||
|
RestrictRealtime=yes
|
||
|
SystemCallFilter=~@clock @debug @module @mount @obsolete @reboot @setuid @swap
|
||
|
ReadWritePaths={{ nd_root_dir }}/data
|
||
|
|
||
|
# You can uncomment the following line if you're not using the jukebox This
|
||
|
# will prevent navidrome from accessing any real (physical) devices
|
||
|
PrivateDevices=yes
|
||
|
|
||
|
# You can change the following line to `strict` instead of `full` if you don't
|
||
|
# want navidrome to be able to write anything on your filesystem outside of
|
||
|
# /var/lib/navidrome.
|
||
|
ProtectSystem=full
|
||
|
|
||
|
# You can uncomment the following line if you don't have any media in /home/*.
|
||
|
# This will prevent navidrome from ever reading/writing anything there.
|
||
|
ProtectHome=true
|