Skip to main content

Templating wrapper for docker-compose

Project description

# meta-compose

This package aims to solve the problem of variable substitution in
docker-compose files by parsing them as [Jinja2](

It was inspired by the discussion

It supports variable declaration in a separate YAML file as well as
access to environment variables.

## Quickstart:

- Install with `pip install meta-compose`

- Create a file `meta-compose.yml` that is a [Jinja2](
template for a docker compose file.

- [Optional] Create a file `meta-compose-data.yml` that contains the variables
used in the template that are not environment variables.

- Call `meta-compose` and it will create a docker-compose.yml in the current

## Usage

usage: meta-compose [-h] [-d DATAFILE] [-t TEMPLATE] [-o OUTPUTFILE]

optional arguments:
-h, --help show this help message and exit
-d DATAFILE, --datafile DATAFILE
Use to specify data files in addition to meta-compose-
data.yml. They must be JSON or YAML files.
-t TEMPLATE, --template TEMPLATE
Use to specify the template file to use. Defaults to
Use to specify the output file to create. Defaults to

## Syntax of meta-compose.yml

- Everything in basic [Jinja2]( is allowed.

- To access environment variables use `{{'default'| env('VARIABLE_NAME')}}`
where `VARIABLE_NAME` is the name of your environment variable and `default`
is the default value you want it to be if the environment variable is not set.

Project details

Download files

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

Files for meta-compose, version 0.1.3
Filename, size File type Python version Upload date Hashes
Filename, size meta-compose-0.1.3.tar.gz (6.9 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page