Skip to main content

A simple, lightweight Python orchestrator for Docker Compose stacks

Project description

Orche

CI

A simple, lightweight Python orchestrator for Docker Compose stacks.

Installation

pip install -e .

CLI Reference

The orche command executes your orchefile.py file with the specified command and services.

orche [command] [services...]

Commands

  • orche up [services] - Start services (executes orchefile.py with 'up' command)
  • orche build [services] - Build services (executes orchefile.py with 'build' command)
  • orche down [services] - Stop services (executes orchefile.py with 'down' command)

Options

  • -f, --file FILE - Path to orche file (default: orchefile.py)
  • -v, --verbose - Enable verbose logging
  • --version - Show version and exit
  • --help - Show help and exit

Examples

# Execute orchefile.py with up command
orche up

# Build specific services
orche build api web

# Start specific services
orche up postgres redis

# Use custom orche file
orche -f custom.py up

Examples

Basic Usage

from orche import Stack

stack = Stack(compose_files=["docker-compose.yml"])
stack.build().up()

With Project Name

from orche import Stack

stack = Stack(
    compose_files=["docker-compose.yml"],
    name="myapp",
    path="/path/to/project"
)

stack.build().up(wait=True)

Specific Services

from orche import Stack

stack = Stack(compose_files=["docker-compose.yml"])

# Build specific services
stack.build(["api", "web"])

# Start specific services
stack.up(["postgres", "redis"])

If your compose files live under another directory, pass path and keep compose_files relative to that directory.

Requirements

  • Python >= 3.10
  • Docker and Docker Compose installed on the system

Development

Install development dependencies:

pip install -e ".[dev]"

Run tests:

pytest

Type checking:

mypy orche

Linting:

ruff check orche

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

orche-0.4.2.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

orche-0.4.2-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file orche-0.4.2.tar.gz.

File metadata

  • Download URL: orche-0.4.2.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for orche-0.4.2.tar.gz
Algorithm Hash digest
SHA256 f6d601b5353a1aa346777ae755a807646b93321e078319d2bb349a4adccd8a2a
MD5 582509433178a5a9febf7cce9a164194
BLAKE2b-256 e39e560f935f549ffc13975f08b9e8d25c662abd34024704b6e4b9ae13c2922d

See more details on using hashes here.

Provenance

The following attestation bundles were made for orche-0.4.2.tar.gz:

Publisher: release.yml on pietroagazzi/orche

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file orche-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: orche-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for orche-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 439fc54482d5e8e67dd7d5044f075a2c0878a1753f4d2227a1bb370277d3cca0
MD5 db4434d54abccc2aab3d0cf014ba5256
BLAKE2b-256 a1e9ef9bbdfa05e32c53b7df51d99822b93d55efe5bf556b80fc10e655af8231

See more details on using hashes here.

Provenance

The following attestation bundles were made for orche-0.4.2-py3-none-any.whl:

Publisher: release.yml on pietroagazzi/orche

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page