# systemd-Unit für den ÄndGgner-Webserver. # # Installation (Beispiel): # sudo cp deploy/aendggner-web.service /etc/systemd/system/ # sudo useradd --system --home /opt/aendggner --shell /usr/sbin/nologin aendggner # sudo cp -r . /opt/aendggner && sudo chown -R aendggner:aendggner /opt/aendggner # sudo systemctl daemon-reload # sudo systemctl enable --now aendggner-web # # Erwartet, dass zuvor "mvn package" gelaufen ist, sodass target/aendggner-*.jar # und target/libs/* existieren. [Unit] Description=AendGgner Web-App After=network.target [Service] Type=simple User=aendggner Group=aendggner WorkingDirectory=/opt/aendggner ExecStart=/bin/sh -c 'exec java -cp "target/aendggner-*.jar:target/libs/*" eu.mulk.aendggner.web.WebMain' Environment=AENDGGNER_WEB_PORT=8080 Environment=AENDGGNER_WEB_BIND=127.0.0.1 Restart=on-failure RestartSec=5 # Ressourcen-Obergrenzen: hält den Dienst auf einem kleinen Server in Schach, # selbst wenn die Anwendungs- und Proxy-seitigen Limits einmal nicht greifen. MemoryMax=512M CPUQuota=150% TasksMax=128 # Härtung NoNewPrivileges=true PrivateTmp=true ProtectSystem=strict ProtectHome=true [Install] WantedBy=multi-user.target