Skip to main content

Implement for AWS ECS and Docker Compose what SAM is to Serverless for AWS Lambda

Project description

PYPI_VERSION GitHub

CodeStyle TDD with pytest BDD with Behave

Codecov Code scan with SonarCloud

BUILD

Be for AWS ECS and docker-compose what AWS SAM is to Lambda

Installation

pip install ecs_composex

Usage

usage: ecs-composex [-h] {up,render,create,config,init,version} ...

positional arguments:
  {up,render,create,config,init,version}
                        Command to execute.
    up                  Generates & Validates the CFN templates,
                        Creates/Updates stack in CFN
    render              Generates & Validates the CFN templates locally. No
                        upload to S3
    create              Generates & Validates the CFN templates locally.
                        Uploads files to S3
    config              Merges docker-compose files to provide with the final
                        compose content version
    init                Initializes your AWS Account with prerequisites
                        settings for ECS
    version             ECS ComposeX Version

optional arguments:
  -h, --help            show this help message and exit

CLI for up and render

usage: ecs_composex up [-h] -n NAME -f DOCKERCOMPOSEXFILE [-d OUTPUTDIRECTORY]
                       [--format {json,yaml,text}] [--region REGIONNAME]
                       [--az ZONES] [-b BUCKETNAME] [--use-spot-fleet]

optional arguments:
  -h, --help            show this help message and exit
  -n NAME, --name NAME  Name of your stack
  -f DOCKERCOMPOSEXFILE, --docker-compose-file DOCKERCOMPOSEXFILE
                        Path to the Docker compose file
  -d OUTPUTDIRECTORY, --output-dir OUTPUTDIRECTORY
                        Output directory to write all the templates to.
  --format {json,yaml,text}
                        Defines the format you want to use.
  --region REGIONNAME   Specify the region you want to build fordefault use
                        default region from config or environment vars
  --az ZONES            List AZs you want to deploy to specifically within the
                        region
  -b BUCKETNAME, --bucket-name BUCKETNAME
                        Bucket name to upload the templates to
  --use-spot-fleet      Runs spotfleet for EC2. If used in combination of
                        --use-fargate, it will create an additional SpotFleet

CLI for config

usage: ecs-composex config [-h] -f DOCKERCOMPOSEXFILE [-d OUTPUTDIRECTORY]

optional arguments:
  -h, --help            show this help message and exit
  -f DOCKERCOMPOSEXFILE, --docker-compose-file DOCKERCOMPOSEXFILE
                        Path to the Docker compose file
  -d OUTPUTDIRECTORY, --output-dir OUTPUTDIRECTORY
                        Output directory to write all the templates to.

AWS Resources support

  • AWS ECS: from docker-compose to ECS transparently, using AWS Fargate primarily.

  • AWS VPC: create or use existing VPC to deploy your services

  • AWS AppMesh: Services mesh for your services.

  • AWS SQS: queues for distributed workloads

  • AWS RDS: databases integration made easy

  • AWS EC2: Deploy your services on EC2 for custom settings. Features SpotFleet by default.

  • AWS KMS: Manage CMK for your deployments

  • AWS SNS

Documentation

Find all the documentation to get started and all the features references here.

RoadMap

Blog

Follow the news and technical articles on using ECS ComposeX on the Blog

Credits

This package would not have been possible without the amazing job done by the AWS CloudFormation team! This package would not have been possible without the amazing community around Troposphere! This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

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

ecs_composex-0.6.3.tar.gz (136.3 kB view details)

Uploaded Source

Built Distribution

ecs_composex-0.6.3-py2.py3-none-any.whl (203.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ecs_composex-0.6.3.tar.gz.

File metadata

  • Download URL: ecs_composex-0.6.3.tar.gz
  • Upload date:
  • Size: 136.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.8

File hashes

Hashes for ecs_composex-0.6.3.tar.gz
Algorithm Hash digest
SHA256 d5b9444448d512ad3d93b529ba0b9917eb6fe0ba2e346351e84b723cdd7a8fd2
MD5 a309c2c489de9e97e3afcf97225cf58b
BLAKE2b-256 183223515ad59d9d6bff83ce495b815d35beb4da2efabdbf135e8b4b7ece9258

See more details on using hashes here.

Provenance

File details

Details for the file ecs_composex-0.6.3-py2.py3-none-any.whl.

File metadata

  • Download URL: ecs_composex-0.6.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 203.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.8

File hashes

Hashes for ecs_composex-0.6.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3d9807c98115a805a62e4f574ca3de03a2ebd8be87e2331eee7e9620ba1ac055
MD5 8d9bc561f0ad89c9b88ef59da582bbcf
BLAKE2b-256 025d611880688df2b7658dab528d672bd184aa8e96b4df793e1cf4e5db8902a6

See more details on using hashes here.

Provenance

Supported by

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