What is AWS App2Container? - AWS App2Container

What is AWS App2Container?

AWS App2Container (A2C) is a command line tool to help you lift and shift applications that run in your on-premises data centers or on virtual machines, so that they run in containers that are managed by Amazon ECS or Amazon EKS.

Moving legacy applications to containers is often the starting point toward application modernization. There are many benefits to containerization:

  • Reduces operational overhead and infrastructure costs

  • Increases development and deployment agility

  • Standardizes build and deployment processes across an organization

How App2Container works

You can use App2Container to generate container images for one or more applications running on Windows or Linux servers that are compatible with the Open Containers Initiative (OCI). This includes commercial off-the-shelf applications (COTs). App2Container does not need source code for the application to containerize it.

You can use App2Container directly on the application servers that are running your applications, or perform the containerization and deployment steps on a worker machine.

App2Container performs the following tasks:

  • Creates an inventory list for the application server that identifies all running ASP.NET (Windows) and Java applications (Linux) that are candidates to containerize.

  • Analyzes the run-time dependencies of supported applications that are running, including cooperating processes and network port dependencies.

  • Extracts application artifacts for containerization and generates a Dockerfile.

  • Initiates builds for the application container.

  • Generates the AWS artifacts needed to deploy the containers on Amazon ECS or Amazon EKS. For example:

    • A CloudFormation template to configure required compute, network, and security infrastructure to deploy containers using Amazon ECS or Amazon EKS.

    • An Amazon ECR container image, Amazon ECS task definitions, and a Kubernetes deployment yaml that incorporate best practices for security and scalability of the application by integrating with various AWS services.

    • CI/CD pipelines for AWS CodeStar (CodeCommit, CodeBuild and CodeDeploy) to build and deploy containers.

Accessing AWS through App2Container

When you initialize App2Container, you provide it with your AWS credentials. This allows App2Container to store artifacts in Amazon S3, if you configured it to do so, and to create and deploy application containers using AWS services such as Amazon ECS and Amazon EKS.

Pricing

App2Container is offered at no additional charge. You are charged only when you use other AWS services to run your containerized application, such as Amazon ECR, Amazon ECS, and Amazon EKS. For more information, see AWS Pricing.