PLEASE NOTE: This document applies to an unreleased version of Rash. It is strongly recommended that you only use official releases of Rash, as unreleased versions are subject to changes and incompatibilities that will not be supported in the official releases.
If you are using an official release version of Rash, you should refer to the documentation for your specific version.Documentation for other releases can be found by using the version selector in the bottom left of any doc page.
rash solves an optimization problem in the containers ecosystem.
Nowadays, you generally need to write container entrypoints in
bash or include them in the
binary, i.e. the program itself. This is a trade-off decision between being fast or being reusable,
Besides, entrypoints share use cases between different kinds of applications, e.g. databases entrypoints are quite similar. Likewise, you might need to provision your containers between different platforms with the same tools, paying attention to secrets, configuration management…
- A simple syntax to maintain low complexity.
- One static binary to be container oriented.
- A declarative syntax to be idempotent.
- Clear output to log properly.
- Security by design.
- Speed and efficiency (TODO: performance tests versus
- Modular design.
- Support of Tera templates.