amazon-ecs-cli-v2

module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 9, 2020 License: Apache-2.0

README

Amazon ECS CLI v2 - Develop, Release and Operate Container Apps on AWS

⚠️ Before you get started please note that this feature is in preview and the intention is to ensure it meets your requirements and give us any feedback on your use case. Please do not run production workloads till we announce the general availability of this feature. Using the instructions and assets in this repository folder is governed as a preview program under the AWS Service Terms: https://aws.amazon.com/service-terms/ .

What's the ECS CLI?

The ECS CLI is a tool for developers to create, release and manage production ready containerized applications on ECS. From getting started, pushing to a test environment and releasing to production, the ECS CLI helps you through the entire life of your app development.

Got a Dockerfile and some code? Get it up and running on ECS in under 10 minutes, with just one command. Ready to take that app to production? Spin up new environments and a continuous delivery pipeline without having to leave your terminal. Find a bug? Tail your logs and deploy with one tool.

Use the ECS CLI to:

  • Organize all your related micro-services in one project
  • Set up test and production environments, across regions and accounts
  • Set up production-ready, scalable ECS services and infrastructure
  • Set up CI/CD Pipelines for all of the micro-services
  • Monitor and debug your applications from your terminal

Read more about the ECS CLI charter and tenets here.

ecs-cli help

Installing

During preview, we're distributing binaries from our GitHub releases. Instructions for installing the ECS CLI v2 for your platform:

macOS and Linux
Platform Command to install
macOS curl -Lo /usr/local/bin/ecs-preview https://github.com/aws/amazon-ecs-cli-v2/releases/download/v0.0.5/ecs-preview-darwin-v0.0.5 && chmod +x /usr/local/bin/ecs-preview && ecs-preview --help
Linux curl -Lo /usr/local/bin/ecs-preview https://github.com/aws/amazon-ecs-cli-v2/releases/download/v0.0.5/ecs-preview-linux-v0.0.5 && chmod +x /usr/local/bin/ecs-preview && ecs-preview --help

Getting started

Make sure you have the AWS command line tool installed and have already run aws configure before you start.

To get a sample app up and running in one command, run the following:

git clone git@github.com:aws-samples/amazon-ecs-cli-sample-app.git demo-app
cd demo-app
ecs-preview init --project demo      \
  --app api                          \
  --app-type 'Load Balanced Web App' \
  --dockerfile './Dockerfile'        \
  --deploy

This will create a VPC, Application Load Balancer, an Amazon ECS Service with the sample app running on AWS Fargate. This process will take around 8 minutes to complete - at which point you'll get a URL for your sample app running!

watch what happens when you run init

Step By Step Setup

Cleaning up 🧹

Once you're finished playing around with this project, you can delete it and all the AWS resources associated it by running ecs-preview project delete.

Learning more 📖

Want to learn more about what's happening? Check out our getting started guide and a detailed breakdown of all the infrastructure that gets created.

We need your feedback 🙏

The ECS CLI v2 is in developer preview, meaning we want to know what works, what doesn't work, and what you want! Have any feedback at all? Drop us an issue or join us on gitter.

We're happy to hear feedback or answer questions, so reach out, anytime!

Security disclosures

If you think you’ve found a potential security issue, please do not post it in the Issues. Instead, please follow the instructions here or email AWS security directly at aws-security@amazon.com.

License

This library is licensed under the Apache 2.0 License.

Directories

Path Synopsis
cmd
ecs-preview
Package main contains the root command.
Package main contains the root command.
ecs-preview/template
Package template provides usage templates to render help menus.
Package template provides usage templates to render help menus.
e2e
internal
pkg/addons
Package addons contains the service to manage addons.
Package addons contains the service to manage addons.
pkg/addons/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/archer
Package archer contains the structs that represent archer concepts, and the associated interfaces to manipulate them.
Package archer contains the structs that represent archer concepts, and the associated interfaces to manipulate them.
pkg/archer/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/aws/cloudwatchlogs
Package cloudwatchlogs contains utility functions for Cloudwatch Logs client.
Package cloudwatchlogs contains utility functions for Cloudwatch Logs client.
pkg/aws/cloudwatchlogs/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/aws/ecr
Package ecr contains utility functions for dealing with ECR repos
Package ecr contains utility functions for dealing with ECR repos
pkg/aws/ecr/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/aws/ecs
Package ecs contains utility functions for dealing with ECS repos.
Package ecs contains utility functions for dealing with ECS repos.
pkg/aws/ecs/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/aws/identity
Package identity wraps AWS Security Token Service (STS) API functionality.
Package identity wraps AWS Security Token Service (STS) API functionality.
pkg/aws/profile
Package profile provides functionality to parse AWS named profiles.
Package profile provides functionality to parse AWS named profiles.
pkg/aws/route53
Package route53 wraps AWS route 53 API functionality.
Package route53 wraps AWS route 53 API functionality.
pkg/aws/s3
Package s3 contains utility functions for Amazon Simple Storage Service Client.
Package s3 contains utility functions for Amazon Simple Storage Service Client.
pkg/aws/s3/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/aws/secretsmanager
Package secretsmanager wraps AWS SecretsManager API functionality.
Package secretsmanager wraps AWS SecretsManager API functionality.
pkg/aws/secretsmanager/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/aws/session
Package session provides functions that return AWS sessions to use in the AWS SDK.
Package session provides functions that return AWS sessions to use in the AWS SDK.
pkg/build/docker/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/cli
Package cli contains the ecs-preview subcommands.
Package cli contains the ecs-preview subcommands.
pkg/cli/group
Package groups contains the names of command groups
Package groups contains the names of command groups
pkg/cli/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/deploy
Package deploy holds the structures to deploy infrastructure resources.
Package deploy holds the structures to deploy infrastructure resources.
pkg/deploy/cloudformation
Package cloudformation provides functionality to deploy ECS resources with AWS CloudFormation.
Package cloudformation provides functionality to deploy ECS resources with AWS CloudFormation.
pkg/describe/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/ini
Package ini provides functionality to parse and read properties from INI files.
Package ini provides functionality to parse and read properties from INI files.
pkg/manifest
Package manifest provides functionality to create Manifest files.
Package manifest provides functionality to create Manifest files.
pkg/store
Package store implements CRUD operations for project, environment, application and pipeline configuration.
Package store implements CRUD operations for project, environment, application and pipeline configuration.
pkg/store/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/template
Package template renders the static files under the "/templates/" directory.
Package template renders the static files under the "/templates/" directory.
pkg/template/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/term/color
Package color provides functionality to displayed colored text on the terminal.
Package color provides functionality to displayed colored text on the terminal.
pkg/term/cursor
Package cursor provides functionality to interact with the terminal cursor.
Package cursor provides functionality to interact with the terminal cursor.
pkg/term/log
Package log is a wrapper around the fmt package to print messages to the terminal.
Package log is a wrapper around the fmt package to print messages to the terminal.
pkg/term/progress
Package progress provides data and functionality to display updates to the terminal.
Package progress provides data and functionality to display updates to the terminal.
pkg/term/progress/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg/term/prompt
Package prompt provides functionality to retrieve free-form text, selection, and confirmation input from the user via a terminal.
Package prompt provides functionality to retrieve free-form text, selection, and confirmation input from the user via a terminal.
pkg/version
Package version holds variables for generating version information
Package version holds variables for generating version information
pkg/workspace
Package workspace contains functionality to manage a user's local workspace.
Package workspace contains functionality to manage a user's local workspace.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL