Ecs Tasks Ops
Project description
Features
Application GUI to manage ECS resources
Use your home aws credentials from ~/.aws/credentials
Get information and attributes for each task, service or instance container
Connect through SSH to container instances or docker container
Show logs for each docker container
Show ECS events for a service
Force restart for a service
Requirements
Installation
You can install Ecs Tasks Ops via pip from PyPI:
$ pip install ecs-tasks-ops
Configuration
AWS Access
This application uses your aws credentials to connect to your ECS, so you need to configure your credentials.
Set up credentials (in e.g. ~/.aws/credentials)
[default]
aws_access_key_id = YOUR_KEY
aws_secret_access_key = YOUR_SECRET
Then, you set up a default region (in e.g. ~/.aws/config)
[default]
region=us-east-1
You can read more about it in boto3
ssh over ssm
If you want to access to containers instances or docker container through ssh, you must configurate ssm in your EC2 machines. That’s because ecs-tasks-ops use its instance id as machine identifier on ssh command. For example, ssh i-0123456789ABCDE. I use ssh-over-ssm tool to configure ssh over ssm to connect to instances.
Predefined Commands
You can set multiples predefined commands to execute on docker containers. You can set them in a configuration file called ecs-tasks-ops.json. This file can be located on ~, ~/.config/ecs-tasks-ops, /etc/ecs-tasks-ops, or any directory configured in the enviromental variable ECS_TASKS_OPS_CONF
Sample configuration
{
"commands": [
"/bin/sh",
"/bin/bash",
"mongo admin -u root -p $(pass mongo/root)"
]
}
GUI Usage
You can open the qt5 application, using the following command
ecs-tasks-ops-qt5
CLI Usage
You can open the command line with ecs-tasks-ops command. This is the help menu:
Usage: ecs-tasks-ops [OPTIONS] COMMAND [ARGS]...
Ecs Tasks Ops.
Options:
-x, --debug / --no-debug
-j, --output-json
--version Show the version and exit.
--help Show this message and exit.
Commands:
clusters Clusters information.
container-instances Container instances defined in a cluster.
containers Get docker containers defined in a cluster.
services Services defined in a cluster.
tasks Set tasks defined in a cluster.
By default, the output format is in a table, but you can get original json format with -j option. You can filter json output with jq tool:
$ ecs-tasks-ops -j clusters | jq "."
Contributing
Contributions are very welcome. To learn more, see the Contributor Guide.
License
Distributed under the terms of the MIT license, Ecs Tasks Ops is free and open source software.
Issues
If you encounter any problems, please file an issue along with a detailed description.
Credits
This project was generated from @cjolowicz’s Hypermodern Python Cookiecutter template.
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
Built Distribution
File details
Details for the file ecs-tasks-ops-0.6.0.tar.gz
.
File metadata
- Download URL: ecs-tasks-ops-0.6.0.tar.gz
- Upload date:
- Size: 20.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec7a997ab25f879339eac7d7e740e61d2475b3c1276a023196b4054737a5e434 |
|
MD5 | 1c3b676a8a4c433c46b1bbfdc5f5d7f7 |
|
BLAKE2b-256 | 3215fe284529463bb1fab4d8ccdfef995d9adfc226f64cf69bef838b08fffde0 |
File details
Details for the file ecs_tasks_ops-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: ecs_tasks_ops-0.6.0-py3-none-any.whl
- Upload date:
- Size: 22.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a9f3db7ee9a31945539faa54cff47c69e9402004bb6f94b702a37bab711334c |
|
MD5 | c2c81fa9ba7b3ac5aafea14044c85593 |
|
BLAKE2b-256 | 3c884d269d658fb388b3eadce60c9cfc04f2ac57b3d16b2b8b6296eebbc7db28 |