Overview
Docker in Docker
This Docker AMI is designed to support Docker-in-Docker workloads. You can use this image as is for any Docker based workload, however; this AMI has been configured to make running Docker-in-Docker workloads as easy and as secure as possible. In addition, this image enables DinD workloads without the need for the --privileged flag.
Docker-in-Docker allows you to run Docker inside a container, isolated from the rest of the host. This is useful in CI environments, where the test job is packaged in a container and the job itself needs to run Docker inside that container. For this reason, Docker's official Docker-in-Docker image is one of the most popular images on DockerHub.
One of the main problems with the DinD image is that it requires the --privileged flag, therefore reducing isolation and making the host more vulnerable to malicious container workloads. To solve this, this AMI comes preconfigured with Sysbox as the default OCI runtime, instead of runc. Sysbox is capable of running Docker-in-Docker without the --privileged flag; in fact, it runs all containers with enhanced isolation by virtue of using the Linux user-namespace and other cutting edge techniques to isolate containers running on the AWS compute instance. As a result of these features, you can run Docker-in-Docker workloads much more safely, ensuring that such workloads can't easily escape the container and compromise the AWS compute instance. Enhanced container isolation was first released in Docker Desktop 4.13.0 and is now available for compute workloads in AWS. For more on enhanced container isolation, see: https://docs.docker.com/desktop/hardened-desktop/enhanced-container-isolation/
Highlights
- Docker-in-Docker support with enhanced Container Isolation to provide an additional layer of security that uses a variety of advanced techniques to harden container isolation without impacting developer productivity.
- Docker will start on system boot, Docker logging is set to use journald
Details
Typical total price
$0.163/hour
Features and programs
Financing for AWS Marketplace purchases
Pricing
- ...
Instance type | Product cost/hour | EC2 cost/hour | Total/hour |
---|---|---|---|
t2.nano | $0.03 | $0.006 | $0.036 |
t2.micro AWS Free Tier | $0.03 | $0.012 | $0.042 |
t2.small | $0.03 | $0.023 | $0.053 |
t2.medium | $0.03 | $0.046 | $0.076 |
t2.large | $0.03 | $0.093 | $0.123 |
t2.xlarge | $0.03 | $0.186 | $0.216 |
t2.2xlarge | $0.03 | $0.371 | $0.401 |
t3.nano | $0.03 | $0.005 | $0.035 |
t3.micro AWS Free Tier | $0.03 | $0.01 | $0.04 |
t3.small | $0.03 | $0.021 | $0.051 |
Additional AWS infrastructure costs
Type | Cost |
---|---|
EBS General Purpose SSD (gp2) volumes | $0.10/per GB/month of provisioned storage |
Vendor refund policy
All fees are non-refundable (except as expressly set forth in Section 11.3) and exclusive of applicable taxes. https://www.docker.com/legal/docker-terms-service/
Legal
Vendor terms and conditions
Content disclaimer
Delivery details
64-bit (x86) Amazon Machine Image (AMI)
Amazon Machine Image (AMI)
An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.
Version release notes
This Docker AMI now supports Docker-in-Docker workloads. You can use this image as is for any Docker based workload, however; this AMI has been configured to make running Docker-in-Docker workloads as easy and as secure as possible. In addition, this image enables DinD workloads without the need for the --privileged flag.
Docker-in-Docker allows you to run Docker inside a container, isolated from the rest of the host. This is useful in CI environments, where the test job is packaged in a container and the job itself needs to run Docker inside that container. For this reason, Docker's official Docker-in-Docker image is one of the most popular images on DockerHub.
Additional details
Usage instructions
Launch an EC2 instance from the AWS Console using this AMI (Docker on Debian 11)
Choose the EC2 instance type, set your key pair, and define your network settings. By default, this AMI is configured to only allow SSH connections, please change the network settings for your use case.
- The default username is "admin" (per Debian Bullseye)
Once the EC2 instance has started:
- Docker CE, Docker CLI, Docker Compose, Docker Scan, Containerd, and Sysbox will be installed and running
- Docker is setup to run with Enhanced Container Isolation, for more information please see: https://docs.docker.com/desktop/hardened-desktop/enhanced-container-isolation/
To test Docker run this command:
docker run --rm hello-world
Resources
Vendor resources
Support
Vendor support
Docker will start on system boot, Docker logging is set to use journald
AWS infrastructure support
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.