pd-compose
pd-compose is a minimal compose-like tool for proot-distro. It reads a pd-compose.yaml to install, start, and stop proot-distro containers — inspired by Docker Compose.
Usage
Define services in pd-compose.yaml:
services:
ubuntu-vm:
image: ubuntu:24.04
binds:
- /host/path:/container/path
environment:
DEBIAN_FRONTEND: noninteractive
command: nginx # optional: command to run
Run:
pd-compose up # install and run containers interactively
pd-compose up -d # run containers in background (detached)
pd-compose ps # list installed containers and detached processes
pd-compose ps -a # show all including stopped detached
pd-compose logs <name> # view logs of detached container
pd-compose logs <name> -f # follow logs
pd-compose down # stop detached and remove containers
pd-compose down -a # stop all detached containers
Commands
- up: Install and run containers. Use
-dfor detached mode (background). - down: Stop detached processes and remove containers. Use
-ato stop all detached. - ps: List installed containers and running detached processes.
- logs: View logs of a detached container. Use
-fto follow,-n Nfor tail.
Architecture
- Uses
proot-distro runfor images with Entrypoint/Cmd (server images) - Uses
proot-distro login -- <command>for services with explicitcommand - PID files stored in
~/.local/share/pd-compose/ - Log files stored in
~/.local/share/pd-compose/<name>.log
Credits
- Built on top of proot-distro by Termux.
- Inspired by Docker Compose.
Metadata
Release files for pd-compose 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pd_compose-0.3.0.tar.gz | 5.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pd_compose-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.2 kB
Release files / pd_compose-0.3.0.tar.gz
| Download URL | pd_compose-0.3.0.tar.gz |
|---|---|
| Size | 5.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d6519d2ca5b8795c97450820453f458d15185722d9c95c9b3e6bc88e4d50cd9
|
|
BLAKE2b-256 checksum How to use checksums |
26787d11cf9367752b6b855a285cfee7e4f28be7e183d6cb12793b580628ac19
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 18, 2026.
Transparency logRelease files / pd_compose-0.3.0-py3-none-any.whl
| Download URL | pd_compose-0.3.0-py3-none-any.whl |
|---|---|
| Size | 4.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6b1ad64da6d7397c59a5ec40cdb3df8d06e6ad8c6bbfd64df02cc1d6262a9377
|
|
BLAKE2b-256 checksum How to use checksums |
673acc8c68d39a2cba2bbf943ba8215707f9583c2d75986dce2637d35dcd0c0e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 18, 2026.
Transparency log