A converter for various docker cluster formats
Project description
container-transform
container-transform is a small utility to transform various docker container formats to one another.
Currently, container-transform can parse and convert:
ECS task definitions
Docker-compose configuration files
Marathon Application Definitions or Groups of Applications
and it can output to:
Systemd unit files
Quickstart
$ cat docker-compose.yml | container-transform -v { "family": "python-app", "volumes": [ { "name": "host_logs", "host": { "sourcePath": "/var/log/myapp" } } ], "containerDefinitions": [ { "memory": 1024, "image": "postgres:9.3", "name": "db", "essential": true }, { "memory": 128, "image": "redis:latest", "name": "redis", "essential": true }, { "name": "web", "memory": 64, "command": [ "uwsgi", "--json", "uwsgi.json" ], "mountPoints": [ { "sourceVolume": "host_logs", "containerPath": "/var/log/uwsgi/" } ], "environment": [ { "name": "AWS_ACCESS_KEY_ID", "value": "AAAAAAAAAAAAAAAAAAAA" }, { "name": "AWS_SECRET_ACCESS_KEY", "value": "1111111111111111111111111111111111111111" } ], "essential": true } ] } Container web is missing required parameter "image". Container web is missing required parameter "cpu".
Quick Help
Usage: container-transform [OPTIONS] [INPUT_FILE] container-transform is a small utility to transform various docker container formats to one another. Default input type is compose, default output type is ECS Default is to read from STDIN if no INPUT_FILE is provided All options may be set by environment variables with the prefix "CT_" followed by the full argument name. Options: -i, --input-type [ecs|compose|marathon] -o, --output-type [ecs|compose|systemd|marathon] -v, --verbose / --no-verbose Expand/minify json output -q, --quiet Silence error messages --version Show the version and exit. -h, --help Show this message and exit.
Docker Image
To get the docker image, run:
docker pull micahhausler/container-transform:latest
To run the docker image:
docker run --rm -v $(pwd):/data/ micahhausler/container-transform docker-compose.yml # or cat docker-compose.yml | docker run --rm -i micahhausler/container-transform
Installation
To install the latest release (Python 3 only), type:
pip install container-transform
To install the latest code directly from source, type:
pip install git+git://github.com/micahhausler/container-transform.git
Documentation
Full documentation is available at http://container-transform.readthedocs.org
License
MIT License (see LICENSE)
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.
Source Distribution
container-transform-1.1.2.tar.gz
(15.1 kB
view hashes)
Built Distribution
Close
Hashes for container-transform-1.1.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9226a0a7fce7b887cce6fba48e2f4878cbd1dbc9b5c133550f257252493f179 |
|
MD5 | b04a34813537d5a16816cb0db81e6bdf |
|
BLAKE2b-256 | 04d9a45db772cc99810c1167c82d1fd1f3a295af7f60f137f2c6047f68b8a1c4 |
Close
Hashes for container_transform-1.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf705136132b788dd50c26c7cfb78f5554dc5ce2839d179842854507476ed8bc |
|
MD5 | e43eae808f5393cb4653e51a1c1b31f8 |
|
BLAKE2b-256 | e45e5f63807c9dafafa7425d7613f727f6f3c19105a4a96ce7ac593d737979c1 |