ansible-roles/webapps/peertube/templates/peertube.service.j2
Mathieu Gauthier-Pilote 0535c40455
All checks were successful
gitea/ansible-roles/pipeline/head This commit looks good
New role to install + upgrade PeerTube
2023-04-07 09:07:59 -04:00

36 lines
1.2 KiB
Django/Jinja

[Unit]
Description=PeerTube daemon
After=network.target postgresql.service redis-server.service
[Service]
Type=simple
Environment=NODE_ENV=production
Environment=NODE_CONFIG_DIR={{ service_home }}/config
User={{ service }}
Group={{ service }}
ExecStart=/usr/bin/node dist/server
WorkingDirectory={{ service_home }}/peertube-latest
SyslogIdentifier=peertube
Restart=always
; Some security directives.
; Mount /usr, /boot, and /etc as read-only for processes invoked by this service.
ProtectSystem=full
; Sets up a new /dev mount for the process and only adds API pseudo devices
; like /dev/null, /dev/zero or /dev/random but not physical devices. Disabled
; by default because it may not work on devices like the Raspberry Pi.
PrivateDevices=false
; Ensures that the service process and all its children can never gain new
; privileges through execve().
NoNewPrivileges=true
; This makes /home, /root, and /run/user inaccessible and empty for processes invoked
; by this unit. Make sure that you do not depend on data inside these folders.
ProtectHome=true
; Drops the sys admin capability from the daemon.
CapabilityBoundingSet=~CAP_SYS_ADMIN
[Install]
WantedBy=multi-user.target