codified workflows for docker compose
Project description
Compose Flow
This utility is built on top of Docker Compose and Swarm Mode. It establishes workflow conventions that are easily shared between team members -- and butlers -- who need to manage and deploy services, including:
- managing Stacks across multiple Swarms (e.g. separate dev and prod Swarms)
- connecting to and working with service containers
- building and publishing images
- sharing service configuration between team members
Installation
pip install compose-flow
Compose-Flow configuration
Create the file ~/.compose/config.yml
with the following sections.
Build
build:
# the image prefix can be your Docker Hub username or a private registry address
image_prefix: myprivateregistry.com
Remotes
remotes:
local:
backend: swarm
test:
backend: rancher
rancher:
project: Ops
cluster: prod
dev:
backend: rancher
prod:
backend: rancher
With this in place you're ready to go onto your project setup.
A basic example
This is the most basic file to get started.
Place this at compose/compose-flow.yml
in your project directory:
profiles:
local:
- docker-compose.yml
Alongside it, place the file compose/docker-compose.yml
:
version: '3.7'
services:
app:
build: ..
image: ${DOCKER_IMAGE}
For building, run: compose-flow build
.
For publishing: compose-flow publish
.
For deploying as configured above: compose-flow -e local deploy
.
More information at docs/advanced.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.