Skip to content

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.

License

Notifications You must be signed in to change notification settings

pankajackson/composectl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ComposeCtl

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.

Features

  • 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

Requirements

  • Python 3.6+
  • Docker & Docker Compose installed

Installation

  1. Clone the repository:

    git clone https://github.com/pankajackson/composectl.git
    cd composectl
  2. Install dependencies:

    pip install -r requirements.txt

Usage

python composectl <action> [services] [options]

Actions

  • up - Start specified services
  • down - Stop and remove services
  • restart - Restart services
  • status - Show running services
  • ls - List all available services
  • logs - Show logs of services
  • stop - Stop services
  • apply - Apply configuration changes

Options

  • --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

Examples

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

License

This project is licensed under the MIT License.

Contributors

Contact

For any questions or issues, please open an issue on this repository.

About

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.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published