A cross-platform *nix supervisor for managing and daemonizing services with process monitoring and log rotation.
Immortal is a cross-platform, OS-agnostic supervisor for Unix-like systems that ensures services remain running by automatically restarting them on failure. It provides a lightweight alternative to traditional init systems with a focus on simplicity and reliability.
System administrators and developers managing long-running services on Unix-like systems who need a simple, reliable process supervisor without OS-specific dependencies.
Developers choose Immortal for its minimalist Unix philosophy, cross-platform compatibility across various *nix operating systems, and lightweight design that avoids the complexity of traditional init systems while providing essential features like log rotation and service dependencies.
⭕ A *nix cross-platform (OS agnostic) supervisor
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Works across various Unix-like systems without OS-specific dependencies, making it ideal for heterogeneous environments as emphasized in its OS-agnostic design.
Adheres to a Unix-like philosophy, focusing solely on keeping services alive with minimal configuration and overhead, which reduces complexity.
Provides flexible log management with options for age, size, and number of retained logs, as demonstrated in the YAML configuration examples.
Allows defining required services that must be running before starting dependents, ensuring proper service ordering without manual intervention.
Requires compiling from source to run services as non-root users on some platforms, due to cgo dependencies, which adds setup complexity.
Lacks graphical interfaces for management; relies on command-line tools and Unix sockets, which may not suit users preferring visual monitoring.
Uses YAML files for configuration, which can be error-prone and less intuitive compared to simpler formats, especially for rapid deployments.