将 systemd 服务转换为 OpenRC(Alpine Linux)

将 systemd 服务转换为 OpenRC(Alpine Linux)

因此,为了提高效率,我目前正在将 XMPP 服务器与 Signal 网关合并(在单独的 VM 中运行每个服务会消耗大量资源),并且我需要转换网关的服务脚本以在 XMPP 的 Alpine 上运行(无需将其全部切换到 Arch),这样我就可以使用常规命令启动和停止并在启动时启动服务。不幸的是,Alpine 上没有太多完整的文档。以下是我在当前 Debian 服务器上的内容:

[Unit]
Description=signal-web-gateway daemon
After=network.target

[Service]
PIDFile=/run/signal-web-gateway/pid
User=signal
Group=signal
RuntimeDirectory=signal-web-gateway
WorkingDirectory=/home/signal/
ExecStart=/home/signal/signal -gateway -bind 127.0.0.1:5010
PrivateTmp=true

[Install]
WantedBy=multi-user.target

基本上,我想知道如何将其转换为 OpenRC(Alpine)以及将其放在哪里。

使用这个:https://gitlab.com/morph027/signal-web-gateway

答案1

这是为您的服务提供的简单初始化脚本。

#!/sbin/openrc-run

depend() {
    need net
}

command="/home/signal/signal"
command_args="-gateway -bind 127.0.0.1:5010"
command_user="signal:signal"
pidfile="/run/${RC_SVCNAME}/pid"

我还在这里为该项目创建了一个问题,https://gitlab.com/morph027/signal-web-gateway/issues/11

注意:关于编写启动脚本的 Alpine Wiki 页面推荐使用以下资源来配置服务。

资源

相关内容