# @hjdarnel/docker-maestro

> Orchestrate your docker-compose files from a single source of truth

Latest version **0.2.0** (published 2020-08-19) · ISC license · 0 weekly downloads

## Install

```sh
npm install @hjdarnel/docker-maestro
pnpm add @hjdarnel/docker-maestro
yarn add @hjdarnel/docker-maestro
bun add @hjdarnel/docker-maestro
```

Provides the command `docker-maestro`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.2.0 |
| Published | 2020-08-19 |
| First published | 2020-08-19 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Unpacked size | 5.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Henry Darnell |
| Maintainers | hjdarnel |

## Links

- npm: https://www.npmjs.com/package/@hjdarnel/docker-maestro
- npm.io page: https://npm.io/package/@hjdarnel/docker-maestro

## Dependencies (3)

- [yargs](https://npm.io/package/yargs.md) ^15.4.1
- [js-yaml](https://npm.io/package/js-yaml.md) ^3.14.0
- [lodash.merge](https://npm.io/package/lodash.merge.md) ^4.6.2

## Recent versions

- 0.2.0 (latest) — 2020-08-19
- 0.1.0 — 2020-08-19

## README

# Docker Maestro
A way to orchestrate your team's `docker-compose.yml` files based on one source of truth , your `docker-maestro.yml`

## Usage
```
docker-maestro generate             Regenerate Compose file from Maestro
docker-maestro use-image [service]  Switch a service to image
docker-maestro use-local [service]  Switch a service to local
```

Example Maestro file:
```yaml
web:
  use-image:
    build: .
    ports:
    - "5000:5000"
    volumes:
    - .:/code
    - logvolume01:/var/log
    links:
    - redis
  use-local:
    volumes:
    - .:/local
    links:
    - redis
redis:
  use-always:
    image: redis
networks:
  default:
    external:
      name: my-pre-existing-network
```

`volumes:` and `networks:` are reserved top level configuration names. They will get generated out to the respective field, not under `services:` in your docker-compose.yml

Execute `docker-maestro --help` for more.

---
_Source: https://npm.io/package/@hjdarnel/docker-maestro · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
