A Python-native compose→quadlet compiler that acts as a drop-in for docker/podman-compose
Project description
quadlet-compose
A Python-native compose→quadlet compiler that acts as a drop-in replacement for docker-compose / podman-compose. It parses compose.yaml files using PyYAML and auto-generated Pydantic models from the compose-spec JSON Schema, translates them into Podman Quadlet unit files via a declarative mapping layer, and manages the resulting systemd services via systemctl.
Status: Early alpha. Core compose→quadlet translation is functional. Most common commands are implemented. Not recommended for production use.
Quick Start
Install latest release from PyPi (recommended)
pip install quadlet-compose
See Installation for more installation options.
Requirements
- podman — container runtime
- Python 3.10+
- PyYAML — YAML parsing
- pydantic — compose-spec model validation
- rich — terminal output
Documentation
- Installation — Pip, PyInstaller binary, Nix, and podman compose provider setup
- Usage — CLI commands and options
- Command Compatibility —
docker composecommand support matrix - Variable Interpolation —
.envfile loading and$VARsubstitution syntax - Field Compatibility — Compose→Quadlet field mapping tables (services, builds, networks, volumes)
License
Apache License 2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quadlet_compose-0.3.0.tar.gz.
File metadata
- Download URL: quadlet_compose-0.3.0.tar.gz
- Upload date:
- Size: 61.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92d65dd51250a344474b782d82b8e1fe1e44e4a12550463f267ada9c8836edd3
|
|
| MD5 |
b8992e603c66972342b35e6e8a53a348
|
|
| BLAKE2b-256 |
5a6fcc7752e4f6685e7a5ea6f8d02c738c02dc4f7921b09c0d13d5fe53f43633
|
File details
Details for the file quadlet_compose-0.3.0-py3-none-any.whl.
File metadata
- Download URL: quadlet_compose-0.3.0-py3-none-any.whl
- Upload date:
- Size: 81.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90d32b303d31decc9a67d37c12b6c0e0eceae8b3211db3cbab02fd65a513654f
|
|
| MD5 |
02747ddb7d5de27ead582a6e93f37aee
|
|
| BLAKE2b-256 |
3acb64658af1316b27e2efc0b57378ea1384ec514a296edf89c443c8ba6b16a1
|