Skip to content
forked from keidarcy/e1s

E1S - Easily Manage AWS ECS Resources in Terminal(~k9s for ECS) 🐱

License

Notifications You must be signed in to change notification settings

Beyond-Finance/e1s

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

e1s

E1S - Easily Manage AWS ECS Resources in Terminal 🐱

e1s is a terminal application to easily browse and manage AWS ECS resources, with a focus on Fargate. Inspired by k9s.

e1s-demo

AWS credentials and configuration

e1s uses the default aws-cli configuration. It does not store or send your access and secret key anywhere. The access and secret key are used only to securely connect to AWS API via AWS SDK. Both profile and region are overridable via the AWS_PROFILE and AWS_REGION.

Installation

e1s is available on Linux, macOS and Windows platforms.

  • Binaries for Linux, Windows and Mac are available in the release page.
  • Via Homebrew for maxOS or Linux
brew install keidarcy/tap/e1s
# upgrade
# brew upgrade keidarcy/tap/e1s 

Features

Basic

  • Read only mode
  • Reload resources
  • Describe clusters
  • Describe services
  • Describe tasks
  • Describe containers
  • Describe task definitions
  • Describe service autoscaling
  • Show cloudwatch logs(Only support awslogs logDriver)
    • Realtime log streaming(Only support one log group)
  • Show Metrics
    • CPUUtilization
    • MemoryUtilization
  • Show autoscaling target and policy
  • Open selected resource in browser(Support new UI(v2))
  • SSH into container
  • Edit service
    • Desired count
    • Force new deployment
    • Task definition family
    • Task definition revision
  • Register new task definition

SSH into container (ECS Exec)

Use aws-ecs-exec-checker to check for the pre-requisites to use ECS exec.

ssh demo

ssh-demo

Use ctrl + d to exit ssh session.

Troubleshooting

The execute command failed because execute command... - check service execute command, task role policy

Session Manager plugin not found - document.

Edit service(Docs)

edit service demo

edit-service-demo

  • Force new deployment
  • Desired tasks
  • Task definition family
  • Task definition revision

Register task definition(Docs)

Register task definition

register-task-definition-demo

Usage

Run e1s

Make sure you have the AWS CLI installed and properly configured with the necessary permissions to access your ECS resources.

Using default profile

$ e1s

Using my-profile profile

$ AWS_PROFILE=my-profile e1s

Using read only mode

$ AWS_PROFILE=my-profile e1s -readonly

Check e1s version

$ e1s -version

Key Bindings

Key Description
, j Select next item
, k Select previous item
, Enter Enter current resource/SSH
, Esc, ctrl + z Go to previous view
d Describe selected resource(show json)
t Describe task definition
w Describe service events
a Show service auto scaling
m Show service metrics(CPUUtilization/MemoryUtilization)
l Show cloudwatch logs(Only support awslogs logDriver)
r Realtime log streaming(Only support one log group)
v List task definition revisions
f Toggle full screen
e Edit resource
b Open selected resource in AWS web console
ctrl + c Quit
ctrl + d Exit from container
ctrl + r Reload resources

Logs

tail -f /tmp/e1s-debug.log

Feature Requests & Bug Reports

If you have any feature requests or bug reports, please submit them through GitHub Issues.

Publish new version

  • Bump version
  • make tag

Thanks

License

MIT

About

E1S - Easily Manage AWS ECS Resources in Terminal(~k9s for ECS) 🐱

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 90.8%
  • HCL 8.7%
  • Makefile 0.5%