Skip to content

Commit

Permalink
chore: readme small fixes (#35)
Browse files Browse the repository at this point in the history
Fixes #
  • Loading branch information
rajyan authored Sep 11, 2022
1 parent c0b7690 commit 49b71b0
Showing 1 changed file with 9 additions and 8 deletions.
17 changes: 9 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@

A CDK construct that provides easy and [low-cost](#cost) ECS on EC2 server setup without a load balancer.

**This construct is for development purposes only** see [Limitations](#limitations).
**This construct is for development purposes only**. See [Limitations](#limitations).

# Try it out!

The easiest way to see what this construct creates is to clone this repository and deploying a sample server.
Edit settings in `bin/low-cost-ecs.ts` and deploy cdk construct. [Public hosted zone](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/AboutHZWorkingWith.html) is required.
The easiest way to see what this construct creates is to clone this repository and deploy the sample server.
Edit settings in `bin/low-cost-ecs.ts` and deploy the cdk construct. [Public hosted zone](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/AboutHZWorkingWith.html) is required.

```
git clone https://github.com/rajyan/low-cost-ecs.git
Expand Down Expand Up @@ -55,16 +55,16 @@ class SampleStack extends Stack {
```

The required fields are `hostedZoneDomain` and `email`.
You can configure your server task definition, and other props. Read [`LowCostECSProps` documentation](https://github.com/rajyan/low-cost-ecs/blob/main/API.md#low-cost-ecs.LowCostECSProps) for details.
You can configure your server task definition and other props. Read [`LowCostECSProps` documentation](https://github.com/rajyan/low-cost-ecs/blob/main/API.md#low-cost-ecs.LowCostECSProps) for details.

# Why

ECS may often seem expensive when used for personal development purposes, because of the cost of the load balancer.
The application load balancer is a great service because it is easy to set up managed ACM certificates, it scales, and has dynamic port mapping,
The application load balancer is a great service because it is easy to set up managed ACM certificates, it scales, and has dynamic port mappings and so on,
but it is over-featured for running 1 ECS service.

However, to run an ECS sever without a load balancer, you need to associate an Elastic IP to the host instance and install your certificate by yourself.
This construct aims to automate these works and deploy resources to run a low-cost ECS server.
However, to run an ECS server without a load balancer, you need to associate an Elastic IP to the host instance and install your certificate by yourself.
This construct aims to automate these works and to make it easy to deploy resources to run a low-cost ECS server.

# Overview

Expand All @@ -77,7 +77,7 @@ Resources generated in this stack
* Scheduled automated renewal every 60 days
* Email notification on certbot task failure
* ECS on EC2 host instance
* ECS-optimized Amazon Linux 2 AMI instance auto scaling group
* ECS-optimized Amazon Linux 2 AMI instance auto-scaling group
* Automatically associated with Elastic IP on instance initialization
* ECS Service
* TLS/SSL certificate installation on default container startup
Expand Down Expand Up @@ -132,4 +132,5 @@ aws ecs execute-command \

The ECS service occupies the host port, only one service can be run at a time.
The old task must be terminated before the new task launches, and this causes downtime on release.

Also, if you make changes that require recreating service, you may need to manually terminate the task of old the service.

0 comments on commit 49b71b0

Please sign in to comment.