MIT License Swift 5.8 Swift.Stream


请给这个库一个⭐️来支持它

一个简单的插件,适用于任何可执行的 Swift 包,它提供了通过 systemd 管理它的能力。

如何安装

要将 systemd 作为 SwiftPM 插件安装,首先将以下行添加到您的 Package.swift 文件中

.package(url: "https://github.com/MihaelIsaev/SwiftSystemd.git", from:"1.0.0")

用法

systemd 的目的是将您的应用程序作为守护进程运行并监控它。

第一步是生成适当的配置文件并保存它。

🛠️ 安装

swift run systemd install

它会提示您几个问题,以生成并保存正确的配置文件。

或者您可以使用参数来预定义值

参数 描述
-c,--config 配置类型:release 或 debug
-t,--target 可执行目标名称
-u,--user 服务将在哪个用户下运行
swift run systemd install -c release -t App -u mike 

它会生成以下配置文件

[Unit]
Description="AppName"
After=network.target

[Service]
User={user}
EnvironmentFile=/path/to/AppName/.env
WorkingDirectory=/path/to/AppName
TimeoutStopSec=2

Restart=always

ExecStart=/path/to/AppName/.build/{config}/{target}

[Install]
WantedBy=multi-user.target

💡 请随意贡献您自己的配置变体

🧹 卸载

swift run systemd uninstall

删除 systemd 配置文件,并停止服务(如果它正在运行)。

🍰 启动

swift run systemd start

使用 systemctl start 启动您的应用程序

🔄 重启

swift run systemd restart

使用 systemctl restart 重启您的应用程序

🛑 停止

swift run systemd stop

如果您的应用程序正在通过 systemd 运行,则使用 systemctl stop 停止它。

🟢 启用

swift run systemd enable

通过 systemctl enable 启用现有服务配置。

🔴 禁用

swift run systemd disable

通过 systemctl disable 禁用现有服务配置。

🔫 杀死

swift run systemd kill

通过 systemctl kill 向正在运行的服务发送 kill 信号。

👀 状态

swift run systemd status

通过 systemctl status 显示您的应用程序的状态。

⚙️ 守护进程重载

swift run systemd daemon-reload

通过 systemctl daemon-reload 重新加载所有 systemd 服务。

📋 日志

swift run systemd logs

通过 journalctl 显示您的应用程序的实时日志。

swift run systemd logs --limit 100

通过 journalctl 显示您的应用程序日志的最后 100

贡献

请随意贡献!