EasyECS is an innovative container deployment tool designed to streamline the process of launching containers within the Amazon Web Services (AWS) Elastic Container Service (ECS) Fargate. With its user-friendly interface and automated workflows, EasyECS empowers developers to efficiently manage containerized applications on the AWS cloud platform. This tool is similar to what skaffold can be in Kubernetes environment.
- Create a CloudFormation Stack on AWS.
- Create port forwarding between you and the task.
- Build and push docker image on the fly.
- An easy configuration file.
- Manage IAM permissions via configuration file.
- Synchronize file between the host and the remote containers.
- Send input to the container.
- Let the task run in the background.
pip install easyecs
- NodeJS needs to be installed on your machine for AWS CDK to work.
Usage: easyecs [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
delete Delete a stack
dev Run a stack in development mode
run Run a stack
metadata:
appname: "helloworld"
role:
managed_policies: []
statements:
- sid: "ssmactions"
resources: ["*"]
actions: ["ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel", "secretsmanager:*"]
effect: "Allow"
execution_role:
managed_policies: ["service-role/AmazonECSTaskExecutionRolePolicy", "AmazonEC2ContainerRegistryReadOnly"]
statements:
- sid: "secretmanageractions"
resources: ["*"]
actions: ["secretsmanager:GetSecretValue"]
effect: "Allow"
- sid: "s3actions"
resources: ["*"]
actions: ["s3:*"]
effect: "Allow"
task_definition:
resources:
limits:
cpu: 2
memory: 4096
containers:
- name: helloworld
image: docker.io/library/debian
user: root
tty: true
command: "/bin/bash"
resources:
limits:
cpu: 1
memory: 2048
volumes:
- "./easyecs:/root/easyecs"
- "./ecs.yml:/root/ecs.yml"
port_forward:
- "8000:8000"
env: []
secrets: []