Unified Control for Docker Compose & Podman A collection of Docker Compose configurations and Podman systemd services for seamless container management. Automate deployments, manage stacks, and transition effortlessly between Docker and Podman with tool ComposeCtl
.
ComposeCtl
is a command-line tool for managing Docker Compose services with ease. It provides an interface to start, stop, restart, view logs, and apply changes to services defined in Docker Compose files.
- Start, stop, restart, and check the status of services
- Apply configuration changes
- View logs of specific services
- Supports dry-run mode for previewing commands
- Customizable configuration and compose file directories
- Python 3.6+
- Docker & Docker Compose installed
-
Clone the repository:
git clone https://github.com/pankajackson/composectl.git cd composectl
-
Install dependencies:
pip install -r requirements.txt
python composectl <action> [services] [options]
up
- Start specified servicesdown
- Stop and remove servicesrestart
- Restart servicesstatus
- Show running servicesls
- List all available serviceslogs
- Show logs of servicesstop
- Stop servicesapply
- Apply configuration changes
--dry-run
: Only show commands without executing them-c, --config-file <path>
: Specify a custom config file (default:~/.config/composectl.yaml
)-d, --compose-dir <path>
: Specify a directory containing compose files
Start services:
python composectl up service1 service2
Stop all services:
python composectl down
Restart a specific service:
python composectl restart service1
Show logs of a service:
python composectl logs service1
Perform a dry run to see commands without execution:
python composectl up service1 --dry-run
This project is licensed under the MIT License.
For any questions or issues, please open an issue on this repository.