Updates

Introducing ‘ECR Anywhere’: A New Tool for Simplifying Multi-Cloud Deployments

Eliminate the complexity of native registries for secure, seamless multi-cloud deployments.

Introducing ‘ECR Anywhere’: A New CentML Tool for Simplifying Multi-Cloud Deployments

ECR Anywhere for Cross-Cloud Container Flexibility

From vendor lock-in and security overhead to reduced agility, multi-cloud deployments present some sizeable hurdles. With a new cross-cloud solution, ECR Anywhere, developers can now eliminate the complexity of native registries, allowing for secure, seamless multi-cloud deployment of Docker images on any Kubernetes cluster.

Managing containerized applications across multiple cloud environments is notoriously tricky. Within their native platforms, container registries like AWS ECR, Google Cloud Container Registry, and Azure Container Registry integrate well, but external compatibility? Not so easy.

Each registry requires additional setup, configuration, and authentication when accessed from a different cloud, creating unnecessary vendor lock-in and hindering deployment flexibility.

That’s where ECR Anywhere comes in.

Designed by the CentML team, ECR provides a streamlined approach for securely hosting Docker images across cloud environments, keeping ECR at the heart of your Kubernetes deployments.

Access ECR Anywhere on GitHub → 

Why We Built ECR Anywhere for Multi-Cloud Deployment

For the CentML Platform, which optimizes AI workflows and enables affordable deployment, supporting any Kubernetes cluster is essential.

At CentML, our team primarily relied on AWS ECR to host private Docker images. As we expanded into cross-cloud deployments, we needed a solution that would allow us to easily use ECR on any Kubernetes cluster, regardless of the cloud provider.

However, managing ECR credentials was challenging. They refresh every six hours to improve security, but this also complicates off-AWS deployments.

So, we created ECR Anywhere to simplify cross-cloud container hosting while preserving the security and convenience of ECR, no matter where your Kubernetes clusters reside.

Setting Up ECR Anywhere for Multi-Cloud Deployment

Using ECR Anywhere is straightforward:

Create IAM Role and Policy

First, set up credentials that can assume a role with the required permissions. For a specific repository, substitute * with the ARN of your repository, or add more statements for multiple repositories.

Json

{

    "Version": "2012-10-17",

    "Statement": [

        {

            "Effect": "Allow",

            "Action": [

                "ecr:GetAuthorizationToken",

                "ecr:GetDownloadUrlForLayer",

                "ecr:BatchGetImage",

                "ecr:BatchCheckLayerAvailability"

            ],

            "Resource": "*"

        }

    ]

}

Configure Your Environment

With AWS credentials in place, use Helm to deploy ECR Anywhere or generate a Kubernetes manifest. We recommend setting up long-lived credentials using AWS OIDC and Spiffe for secure, scalable access. Reference AWS SDK Environment Variables to configure these.

Yaml
pod:

 container:

   env:

     - name: AWS_ACCESS_KEY_ID

       value: "EXAMPLE"

     - name: AWS_SECRET_ACCESS_KEY

       value: "EXAMPLE"

     - name: AWS_ROLE_ARN

       value: "ARN of role with ECR permissions"

     - name: AWS_REGION

       value: "us-east-1"

Deploy Using Helm

Deploy ECR Anywhere with Helm:

bash
  helm repo add ecr-anywhere https://centml.github.io/ecr-anywhere

  helm repo update

  helm install ecr-anywhere ecr-anywhere/ecr-anywhere -f values.yaml

Test Your Multi-Cloud Deployment

Once deployed, create a namespace with the label ecr-anywhere.centml.ai/namespace: “enabled”, followed by a secret with the label ecr-anywhere.centml.ai/managed: “true”. The secret’s content will be automatically managed by the mutating webhook.

Simplify Cross-Cloud Container Management with ECR Anywhere

ECR Anywhere makes it easier than ever to run applications across multiple cloud environments without compromising security or flexibility.

By reducing the friction of credential management, ECR helps you get more from Kubernetes and Docker in a multi-cloud world.

As always, we’d love to hear all about your deployments!

Here’s to AI for all 🦾


Looking for superior, affordable AI deployment? Try the CentML Platform and get $10 in free credits (worth 4 million tokens on Llama 3.1 405B).

Share this

Get started

Let's make your LLM better! Book a Demo