A project to simplify Docker container management, made with love.
It ships a single composekit command with three subcommands:
composekit sort: sorts keys in Docker Compose filescomposekit update: updates Docker imagescomposekit generate: creates Docker Compose files
See the examples/ directory for sample container definitions and config files you can copy and adapt:
- Generation rules: examples/generate.yaml
- Update rules: examples/update.yaml
- Container definitions: examples/containers/
Install directly from the repository with uv:
uv tool install git+https://github.com/itisFarzin/ComposeKitor with pipx:
pipx install git+https://github.com/itisFarzin/ComposeKitPin a release by appending @<tag>, e.g. @v1.0.0.
Each subcommand reads container definitions from a folder (defaulting to
containers/ in the current directory) and writes the generated compose
files relative to where you run it. Point it at your own files with flags:
composekit generate -c config/generate.yaml
composekit update -c config/update.yaml
composekit sort -C containers/To try it against the bundled examples from the repo root:
composekit generate -c examples/generate.yamlCommon flags:
-C/--containers PATH: folder with container definitions-c/--config PATH: config file to load (repeatable)--commit: commit the resulting changes to the git repository (off by default; intended for CI)
Generate also accepts -o/--composes PATH and --output PATH. See
composekit <command> --help for the full list.
This project is licensed under the MIT License. See LICENSE for more details.