EC2 Container Service (ECS) is a highly scalable, fast, container management service that makes it easy to run, stop, and manage Docker containers on a cluster of Amazon EC2 instances. To run an application on ECS you need the following components:
- Docker image published to Docker Hub or EC2 Container Registry (ECR)
- ECS cluster
- ECS service
We provide you templates for the ECS cluster and the service. You need to publish the Docker image.
This template describes a fault tolerant and scalable ECS cluster on AWS. The cluster scales the underlying EC2 instances based on memory and CPU reservation. In case of a scale down, the instance drains all containers before it is terminated.
- This templates depends on our
vpc-*azs.yaml
template. Launch Stack - Launch Stack
- Click Next to proceed with the next step of the wizard.
- Specify a name and all parameters for the stack.
- Click Next to proceed with the next step of the wizard.
- Click Next to skip the Options step of the wizard.
- Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
- Click Create to start the creation of the stack.
- Wait until the stack reaches the state CREATE_COMPLETE
vpc/vpc-*azs.yaml
(required)vpc/vpc-ssh-bastion.yaml
security/auth-proxy-*.yaml
This template describes a fault tolerant and scalable ECS service on AWS. The service scales based on CPU utilization.
The image needs to expose port 80 or the
AWS::ECS::TaskDefinition
needs to be adjusted!
We provide two service templates:
service-cluster-alb.yaml
uses the cluster's load balancer and path based routing. If you want to run multiple services on the same cluster they all will use the same domain name but start with different paths (e.g.https://yourdomain.com/service1/
andhttps://yourdomain.com/service2/
).service-dedicated-alb.yaml
includes a dedicated load balancer (ALB). You can then use a separate domain name for each service.
This template describes a fault tolerant and scalable ECS service that uses the cluster's load balancer and path based routing.
- This templates depends on our
cluster.yaml
template. Launch Stack - Launch Stack
- Click Next to proceed with the next step of the wizard.
- Specify a name and all parameters for the stack.
- Click Next to proceed with the next step of the wizard.
- Click Next to skip the Options step of the wizard.
- Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
- Click Create to start the creation of the stack.
- Wait until the stack reaches the state CREATE_COMPLETE
ecs/cluster.yaml
(required)
This template describes a fault tolerant and scalable ECS service that uses a dedicated load balancer for the service.
- This templates depends on our
cluster.yaml
template. Launch Stack - Launch Stack
- Click Next to proceed with the next step of the wizard.
- Specify a name and all parameters for the stack.
- Click Next to proceed with the next step of the wizard.
- Click Next to skip the Options step of the wizard.
- Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
- Click Create to start the creation of the stack.
- Wait until the stack reaches the state CREATE_COMPLETE
vpc/vpc-*azs.yaml
(required)ecs/cluster.yaml
(required)
We offer support for our CloudFormation templates: setting up environments based on our templates, adopting templates to specific use cases, resolving issues in production environments. Hire us!
We are looking forward to your feedback. Mail to hello@widdix.de.
A cloudonaut.io project. Engineered by widdix.