Skip to main content

Manage, Configure and Deploy your services and AWS services and applications from your docker-compose definition

Reason this release was yanked:

Deprecated

Project description

PYPI_VERSION PyPI - License PY_DLS

CodeStyle TDD with pytest BDD with Behave

Code scan with SonarCloud

BUILD

Manage, Configure and deploy your applications/services and AWS resources from your docker-compose definitions

Why use ECS Compose-X?

As a developer, working locally is a crucial part of your day to day work, and docker-compose allows you to do just that, for simple services as well as very complex structures.

Your prototype works, and you want to deploy to AWS. But what about IAM ? Networking ? Security ? Configuration ?

Using ECS Compose-X, you keep your docker-compose definitions as they are, add the AWS services you have chosen as part of that definition, such as ELB, RDS/DynamodDB Databases etc, and the program will automatically generate all the AWS CloudFormation templates required to deploy all your services.

It automatically takes care of network access requirements and IAM permissions, following best practices.

Installation

ECS Compose-X can be used as a CLI ran locally, in CICD pipelines, or as an AWS CloudFormation macro, allowing you to use your Docker Compose files directly in CloudFormation!

On AWS using AWS CloudFormation Macro

You can now deploy the CloudFormation macro to your AWS Account using AWS Serverless Application Repository (SAR).

Deploy it in your account today AWS_SAR

Find out how to use ECS Compose-X in AWS here

Via pip

pip install ecs_composex

How is it different ?

There are a lot of similar tools out there, including published by AWS. So here are a few of the features that we think could be of interest to you.

Modularity / “Plug & Play”

The majority of people who are going to use ECS ComposeX on a daily basis should be developers who need to have an environment of their own and want to quickly iterate over it.

However, it is certainly something that Cloud Engineers in charge of the AWS accounts etc. would want to use to make their own lives easy too.

In many areas, you as the end-user of ComposeX will already have infrastructure in place: VPC, DBs and what not. So as much as possible, you will be able in ComposeX to define Lookup sections which will find your existing resources, and map these to the services.

Built for AWS Fargate

However the original deployments and work on this project was done using EC2 instances (using SpotFleet), everything is now implemented to work on AWS Fargate First (2020-06-06).

That said, all features that can be supported with EC2 instances are available to you with ECS Compose-X, which, will simply disable such settings when deployed on top of AWS Fargate.

Attributes auto-correct

A fair amount of the time, deployments via AWS CloudFormation, Ansible and other IaC will fail because of incompatible settings. This happened a number of times, with a lot of different AWS Services.

Whilst giving you the ability to use all properties of AWS CloudFormation objects, whenever possible, ECS Compose-X will understand how two services are connected and will auto-correct the settings for you.

For example, if you set the Log retention to be 42 days, which is invalid, it will automatically change that to the closest valid value (here, 30).

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!

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.16.9.tar.gz (214.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ecs_composex-0.16.9-py3-none-any.whl (308.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ecs_composex-0.16.9.tar.gz
  • Upload date:
  • Size: 214.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.9.7 Linux/5.13.15-100.fc33.x86_64

File hashes

Hashes for ecs_composex-0.16.9.tar.gz
Algorithm Hash digest
SHA256 53a458d5fefb6a0f6b462d17a61620a7f3a0469b7358596fe2497a54105eb87a
MD5 6d8bb4219ca7e2b903e8fe6f5a1f8358
BLAKE2b-256 ab77b5a39f6fef135f0297776619e16fd81bb2f9c04d4003440ec3c79a3b36a6

See more details on using hashes here.

File details

Details for the file ecs_composex-0.16.9-py3-none-any.whl.

File metadata

  • Download URL: ecs_composex-0.16.9-py3-none-any.whl
  • Upload date:
  • Size: 308.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.9.7 Linux/5.13.15-100.fc33.x86_64

File hashes

Hashes for ecs_composex-0.16.9-py3-none-any.whl
Algorithm Hash digest
SHA256 08c89e36eea0d12048133f886926d19e48cece02f4bacc68e01a6f9fb1f62830
MD5 09c678ce91d269bbccd1df6e794c38c3
BLAKE2b-256 4396f88a432309c6ebbc37f06eac0ea52c6c2fdce66bf0b0265afd01d89e5f62

See more details on using hashes here.

Supported by

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