]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - support/systemd/peertube.service
Merge branch 'release/4.2.0' into develop
[github/Chocobozzz/PeerTube.git] / support / systemd / peertube.service
index 047ce7e5609738e982d088a6a13c786aa6f57f98..00d66b917f7b5d81eeb15477ae937c2e0c9bf547 100644 (file)
@@ -1,6 +1,6 @@
 [Unit]
 Description=PeerTube daemon
-After=network.target
+After=network.target postgresql.service redis-server.service
 
 [Service]
 Type=simple
@@ -8,12 +8,26 @@ Environment=NODE_ENV=production
 Environment=NODE_CONFIG_DIR=/var/www/peertube/config
 User=peertube
 Group=peertube
-ExecStart=/usr/bin/npm start
+ExecStart=/usr/bin/node dist/server
 WorkingDirectory=/var/www/peertube/peertube-latest
-StandardOutput=syslog
-StandardError=syslog
 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