48 lines
1.6 KiB
Desktop File
48 lines
1.6 KiB
Desktop File
[Unit]
|
||
Description=SGame admin server (江湖录后台:玩家反馈 + 埋点 + 看板)
|
||
Documentation=https://git.xindiegaming.top/bia/sgame-admin-server
|
||
After=network-online.target
|
||
Wants=network-online.target
|
||
|
||
[Service]
|
||
Type=simple
|
||
User=sgame
|
||
Group=sgame
|
||
WorkingDirectory=/opt/sgame-admin
|
||
ExecStart=/opt/sgame-admin/server -config /opt/sgame-admin/config.yaml
|
||
# 密钥(JWT_SECRET / INIT_ADMIN_PASSWORD / INGEST_APP_KEY)走这个文件,
|
||
# 权限 600、属主 sgame,不进任何仓库。
|
||
EnvironmentFile=/opt/sgame-admin/env
|
||
|
||
Restart=always
|
||
RestartSec=5s
|
||
|
||
# —— 资源闸 ——
|
||
# VPS 总共 459MB,还跑着 Caddy / frps / v2ray / vaultwarden。
|
||
# 实测常驻 ~30MB,150M 留了 5 倍余量:真涨到这个数说明有泄漏,
|
||
# 宁可让它被 OOM kill 然后自动重启,也不能把整机拖进 swap 抖动。
|
||
#
|
||
# 目标机是 CentOS 7 = systemd 219 + cgroup v1,只认 MemoryLimit;
|
||
# 新版的 MemoryMax 在这里会被静默忽略,内存闸等于没写。
|
||
MemoryLimit=150M
|
||
# 单核机器,限制 CPU 配额避免某次重聚合把 Caddy 饿死
|
||
CPUQuota=80%
|
||
TasksMax=256
|
||
|
||
# —— 加固 ——
|
||
# 同样受 systemd 219 限制:ProtectSystem=strict、ReadWritePaths、
|
||
# ProtectKernelTunables、RestrictSUIDSGID 都是 232+ 才有的,写了只会被忽略
|
||
# 并刷 warning。full 已经把 /usr /boot /etc 挂成只读,而本服务只写
|
||
# /opt/sgame-admin/data,够用。
|
||
NoNewPrivileges=true
|
||
PrivateTmp=true
|
||
ProtectSystem=full
|
||
ProtectHome=true
|
||
|
||
StandardOutput=journal
|
||
StandardError=journal
|
||
SyslogIdentifier=sgame-admin
|
||
|
||
[Install]
|
||
WantedBy=multi-user.target
|