X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=installation%2Fpleroma.service;h=72090bbc74cec8a0c5608980838cd3d7048805bb;hb=2a818a3e77ebf276eb9123cc176a5986cc9e47ed;hp=fd418098504d0a2ece9fdd13bb5c182a35aa8f1e;hpb=2d83efa5deeef249494f06c6a0f20cfe5791a8e3;p=akkoma diff --git a/installation/pleroma.service b/installation/pleroma.service index fd4180985..72090bbc7 100644 --- a/installation/pleroma.service +++ b/installation/pleroma.service @@ -3,13 +3,34 @@ Description=Pleroma social network After=network.target postgresql.service [Service] -User=pleroma -WorkingDirectory=/home/pleroma/pleroma -Environment="HOME=/home/pleroma" -ExecStart=/usr/local/bin/mix phx.server ExecReload=/bin/kill $MAINPID KillMode=process Restart=on-failure +; Name of the user that runs the Pleroma service. +User=pleroma +; Declares that Pleroma runs in production mode. +Environment="MIX_ENV=prod" + +; Make sure that all paths fit your installation. +; Path to the home directory of the user running the Pleroma service. +Environment="HOME=/home/pleroma" +; Path to the folder containing the Pleroma installation. +WorkingDirectory=/home/pleroma/pleroma +; Path to the Mix binary. +ExecStart=/usr/bin/mix phx.server + +; Some security directives. +; Use private /tmp and /var/tmp folders inside a new file system namespace, which are discarded after the process stops. +PrivateTmp=true +; 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 +; Drops the sysadmin capability from the daemon. +CapabilityBoundingSet=~CAP_SYS_ADMIN + [Install] WantedBy=multi-user.target