Files
Piik/deploy/systemd/screener.service.example
T
AAA 3d960dc5bd docs: simplify repository truth architecture (#295)
Modularize durable truth, bound always-loaded instructions, and keep domain-document size checks advisory. Local cross-platform repository hygiene checks pass; GitHub-hosted steps were not started because of the account billing state.
2026-08-27 11:45:24 +08:00

42 lines
967 B
Plaintext

[Unit]
Description=Screener WebRTC signaling and web application
# Same-host LiveKit deployments also install the tracked readiness drop-in.
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=screener
Group=screener
WorkingDirectory=/opt/screener/current
EnvironmentFile=/etc/screener/screener.env
ExecStart=/usr/local/bin/node dist/server/server/index.js
Restart=on-failure
RestartSec=3s
TimeoutStopSec=20s
UMask=0077
StateDirectory=screener
StateDirectoryMode=0700
NoNewPrivileges=true
PrivateDevices=true
PrivateTmp=true
ProtectSystem=strict
ProtectHome=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectKernelLogs=true
ProtectControlGroups=true
ProtectClock=true
ProtectHostname=true
RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
RestrictNamespaces=true
RestrictRealtime=true
RestrictSUIDSGID=true
LockPersonality=true
CapabilityBoundingSet=
SystemCallArchitectures=native
[Install]
WantedBy=multi-user.target