A command-line tool for building and configuring App Container Images (ACI) and pods with runtime templating and convention over configuration.
dgr is a command-line utility for building and configuring App Container Images (ACI) and pods. It follows the App Container (appc) specification and uses convention over configuration to create generic images that can be customized at runtime. The tool solves the problem of environment-specific container configurations by separating build-time and runtime concerns.
DevOps engineers and platform teams managing containerized applications with rkt, especially those needing runtime configuration and templating for multi-environment deployments.
Developers choose dgr for its strong runtime configuration capabilities, support for the App Container spec, and ability to build generic images that adapt to different environments without duplication. Its integrated templating and script runlevels provide flexibility not found in simpler build tools.
Container build and runtime tool
Uses Go templating with built-in functions to dynamically generate configuration files at container start, enabling the same image to adapt to different environments without rebuilds, as highlighted in the templates section.
Executes scripts at multiple stages like build, prestart, and inherit, providing fine-grained control over container setup and customization, detailed in the runlevels documentation.
Includes a built-in test system that can be extended to support various testing frameworks, allowing automated ACI testing within the build process, as mentioned in the commands and features.
Builds and manages pods as cohesive groups of ACIs, enabling orchestration of multi-service applications during both build and runtime, which is a key feature outlined in the pod support section.
Heavily reliant on rkt and the App Container spec, which have smaller adoption compared to Docker, limiting community support, tooling, and future compatibility, as noted in the comparison and requirements.
Requires root privileges to run rkt and a Linux kernel >= 3.18 with overlay filesystem, making it unsuitable for restricted, non-Linux, or legacy environments, as specified in the requirements section.
Some parts of the README, such as detailed pod building instructions, are marked as TODO, indicating gaps that could hinder learning and implementation for new users.
A tool for exploring each layer in a docker image
Build Container Images In Kubernetes
Work with remote images registries - retrieving information, images, signing content
A tool that facilitates building OCI images.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.