Systemd

简要概述

通过 systemd 来管理服务的生命周期。

生成配置

在微服务代码目录,执行:

make manifests

将会生成 systemd 配置在 deploy/systemd/${APPNAME}.service 目录,把配置拷贝到目标主机 /usr/lib/systemd/system/${APPNAME}.service,启用服务:

systemctl enable ${APPNAME}
systemctl start ${APPNAME}

服务模版

[Unit]
After=network-online.target
Documentation=http://(app.yaml:services.http_address)/openapi-spec/
Description=The ${SERVICE_CODE} microservice. For more API detailed, please refer to the docs

[Service]
Type=simple
User=nobody
Restart=always
RestartSec=15s
TimeoutSec=60s
LimitNOFILE=65535
KillMode=control-group
MemoryLimit=2048M
ExecStart=/usr/local/${PRODUCT_CODE}/${SHORT_NAME}/${API_VERSION}/service --config /usr/local/${PRODUCT_CODE}/${SHORT_NAME}/${API_VERSION}/config/app.yaml

[Install]
Alias=${APPNAME}.service
WantedBy=multi-user.target

其中变量 “SERVICE_CODE”、“PRODUCT_CODE”、“SHORT_NAME”、“APPNAME” 依据关键术语填写。




最后修改 14.04.2023: feat: 添加 cicd 相关内容 (ca26ac8)