BatchX images are the main entity of the BatchX ecosystem.
They define the computation, packaging up the programs with all of the parts they need, such as libraries and other dependencies.
BatchX images are computational building blocks, implemented as Docker images and having the following properties:
- Request-response model: BatchX images are aimed at transforming a JSON input message into a JSON output message.
- Self-contained: They are autonomous computational building blocks, ready to run without any external dependency.
- Infrastructure agnostic: BatchX images run both locally and in BatchX, and only contain code aimed at solving a particular business problem, not at interacting with our infrastructure.
- Black boxes. Once imported, they become black boxes hiding their internals.
- Self-descriptive: They provide meta-information describing their coordinates, purpose, usage and input/output messages.
- Immutable: Both in terms of their content, and their coordinates (naming).
Images must fulfill a series of requirements in order to be used in BatchX: