Adrian Lita
Embedded Systems / Software Architect / Engineer
nanoinit
Overview
Linux based, Docker-aimed supervisor with very low memory footprint and full control of targeted applications. nanoinit is a dependency-free, very lightweight supervisor application (daemon) especially crafted for using inside Docker containers. RAM size is as little as possible, dependent on the number of apps in the config file; usually does not exceed a few KB. The main reason behind this project is that we were usually using supervisord as the default supervisor for docker containers, but this came with a >100 MB Python and tons of packages, which made no sense when Python wasn't required for other purposes.
What I Did
- everything was 100% implemented by me
Disk size
- for Ubuntu Linux: ~41KB
- for Alpine Linux: ~66KB
Main features
- JSON configuration via the -c argument
- non-dedicated JSON configuration via the -j argument
- save logs to your desired path
- add any number of apps to supervise, with any combination of parameters
- redirect stdout and/or stderr of your applications to specific locations
- autorestart failed apps
- manual mode for specific apps
Technologies Used
- C
- JSON
- Linux
- Docker
Links
This page was automatically exported from https://adrian.lita.me - Visit the website for detailed information
Adrian Lita - CV