AYNUR / PROCESS MANAGER
Aynur
把本地二进制,交给一个轻量守护进程。
Aynur 是面向本地 Rust 二进制的轻量进程管理工具。用熟悉的 start、reload、list、logs 命令管理应用,让异常退出、日志和重启恢复都有清晰的归属。
- 项目类型
- CLI + 本地 daemon
- 运行平台
- Linux / macOS
- 接入方式
- 可执行二进制,无需依赖 Core
01 / ARCHITECTURE
CLI 发命令,daemon 守护进程。
命令行通过本机 Unix Socket 与常驻 daemon 通信;daemon 管理子进程、保存恢复快照,并将输出写入独立日志。
运行边界
受管程序运行在独立进程组中。异常退出会自动重启,短时间内连续崩溃会标为 errored。stop 先发送 SIGTERM,再在等待后使用 SIGKILL。
恢复边界
saved.json 记录需要恢复的应用。startup 配置用户级 systemd 或 macOS LaunchAgent;Linux 要在登录前启动,还需按命令提示启用 linger。
02 / QUICKSTART
从一个本地二进制开始。
示例中的 gateway 是你的应用二进制名称,api 是注册到 Aynur 的应用名。生产机可安装预先编译好的 Aynur 二进制。
安装与启动
在安装了 Rust 的开发机安装 CLI。先构建业务程序,再从项目目录运行二进制。
cargo install aynur --locked
# 在你的 Rust 项目目录中
cargo build --release --locked
aynur start ./target/release/gateway -n api查看进程与日志
list 查看状态;logs 持续输出 stdout / stderr,按 Ctrl+C 退出日志查看。
aynur list
aynur logs api管理生命周期
按需执行对应命令。reload 会重启进程;应用连续可用性需由你的部署架构保障。
# 重启进程
aynur reload api
# 需要停止应用时执行
aynur stop api
# 安装当前用户的登录启动服务
aynur startup03 / CONFIGURATION
环境和运行状态,明确保存。
应用启动时记录环境;是否刷新环境由重载命令显式指定。
环境变量
--env-file 中的值覆盖启动命令当前的环境。普通 reload 使用已保存环境;--update-env 重新读取当前 shell 与已配置的环境文件。
状态默认位于 ~/.aynur,包括 apps/、logs/、saved.json 和 daemon 文件。使用 AYNUR_HOME 选择其他目录时,各次命令须保持一致。
aynur start ./target/release/gateway -n api \
--env-file .env
aynur reload api --update-env
aynur save本项目聚焦单机进程管理,当前范围为 Linux / macOS;远程管理、集群模式和 Web 控制台不在当前功能内。
04 / SOURCE & DOCS
从命令回到实现。
架构对应的源码入口:ipc.rs、daemon.rs、process.rs、saved.rs 与 startup.rs。
每个工具各有职责,按你的项目需要组合。
浏览全部相关工具