From 687af94478d649e56fd3f5fcf8e74f11db82902e Mon Sep 17 00:00:00 2001 From: Al Clark Date: Tue, 6 May 2025 11:40:55 +0100 Subject: [PATCH 1/2] adds table --- jekyll/_cci2/building-docker-images.adoc | 40 +++++++++++++++++------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/jekyll/_cci2/building-docker-images.adoc b/jekyll/_cci2/building-docker-images.adoc index 10653f7ed5..3e91929232 100644 --- a/jekyll/_cci2/building-docker-images.adoc +++ b/jekyll/_cci2/building-docker-images.adoc @@ -45,25 +45,43 @@ CAUTION: Only use `setup_remote_docker` key for jobs where your primary executor [#specifications] == Specifications -The resource class used for the remote Docker environment is determined by how you configure the primary container for the job. The sections below show how Docker and remote Docker environments correlate. +CircleCI runs remote Docker environments using **Linux or Arm machine resource classes**, depending on the resource class you assign to the Docker executor. -For specification, credit, and pricing information for all resource classes, see the link:https://circleci.com/product/features/resource-classes/[Resource class product page]. +=== x86 Architecture -=== x86 -For *x86* architecture, the equivalent Linux VM resource class is used for remote Docker, relative to how the primary Docker container is configured. For example, if your Docker executor is configured to use a `medium` resource class, the remote Docker environment for that job uses `medium` also. Exceptions to this are as follows: +- A remote Docker environment uses a **Linux VM machine** resource class that corresponds to the Docker executor class. +- **Exceptions**: + - `small` maps to `medium` (Linux VM) + - `medium+` maps to `large` (Linux VM) -* If you use the `small` Docker resource class for your primary execution environment, the remote Docker environment uses Linux VM, `medium`. -* If you use the `medium+` Docker resource class for your primary execution environment, the remote Docker environment uses Linux VM, `large`. +=== Arm Architecture -For a full list of available Linux VM resource classes see the xref:configuration-reference#linuxvm-execution-environment[Configuration Reference]. +- Arm-based Docker jobs use an equivalent **Arm machine** resource class for remote Docker. -=== Arm +=== Mapping: Docker Executor ➜ Remote Docker (Linux/Arm Machine) -TIP: *Arm on Docker* For pricing information, and a list of CircleCI Docker convenience images that support Arm resource classes, see the link:https://circleci.com/product/features/resource-classes/[Resource classes page]. +==== x86 Architecture -For *Arm* architecture the equivalent Arm VM resource class is used for remote Docker, relative to how the primary Docker container is configured. For example, if your Docker executor is configured to use a `medium` resource class, the remote Docker environment for that job uses `medium` also. +| Docker Executor Resource Class | Remote Docker (Linux Machine) Resource Class | +|-------------------------------|----------------------------------------------| +| `small` | `medium` (Linux VM) | +| `medium` | `medium` (Linux VM) | +| `medium+` | `large` (Linux VM) | +| `large` | `large` (Linux VM) | +| `xlarge` | `xlarge` (Linux VM) | +| `2xlarge` | `2xlarge` (Linux VM) | -For a full list of available Arm VM resource classes see the xref:configuration-reference#arm-execution-environment-linux[Configuration Reference]. +==== Arm Architecture + +| Docker Executor Resource Class | Remote Docker (Arm Machine) Resource Class | +|-------------------------------|--------------------------------------------| +| `arm.medium` | `arm.medium` (Arm VM) | +| `arm.large` | `arm.large` (Arm VM) | +| `arm.xlarge` | `arm.xlarge` (Arm VM) | +| `arm.2xlarge` | `arm.2xlarge` (Arm VM) | + +- Full list of resource classes: link:https://circleci.com/docs/configuration-reference/#resourceclass[Configuration Reference] +- Full specifications and pricing: link:https://circleci.com/pricing/price-list/[CircleCI Pricing] === CircleCI server For CircleCI server installations, contact the systems administrator for specifications. From 8ebf51d8c03e18337c63c6c42e941b53b6859be1 Mon Sep 17 00:00:00 2001 From: Al Clark Date: Tue, 6 May 2025 11:49:12 +0100 Subject: [PATCH 2/2] Updates capitalisation --- jekyll/_cci2/building-docker-images.adoc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/jekyll/_cci2/building-docker-images.adoc b/jekyll/_cci2/building-docker-images.adoc index 3e91929232..b61aef75c1 100644 --- a/jekyll/_cci2/building-docker-images.adoc +++ b/jekyll/_cci2/building-docker-images.adoc @@ -47,22 +47,22 @@ CAUTION: Only use `setup_remote_docker` key for jobs where your primary executor CircleCI runs remote Docker environments using **Linux or Arm machine resource classes**, depending on the resource class you assign to the Docker executor. -=== x86 Architecture +=== x86 architecture - A remote Docker environment uses a **Linux VM machine** resource class that corresponds to the Docker executor class. - **Exceptions**: - `small` maps to `medium` (Linux VM) - `medium+` maps to `large` (Linux VM) -=== Arm Architecture +=== Arm architecture - Arm-based Docker jobs use an equivalent **Arm machine** resource class for remote Docker. -=== Mapping: Docker Executor ➜ Remote Docker (Linux/Arm Machine) +=== Mapping: Docker executor ➜ Remote Docker (Linux/Arm Machine) -==== x86 Architecture +==== x86 architecture -| Docker Executor Resource Class | Remote Docker (Linux Machine) Resource Class | +| Docker resource class | Remote Docker (Linux Machine) resource class | |-------------------------------|----------------------------------------------| | `small` | `medium` (Linux VM) | | `medium` | `medium` (Linux VM) | @@ -71,9 +71,9 @@ CircleCI runs remote Docker environments using **Linux or Arm machine resource c | `xlarge` | `xlarge` (Linux VM) | | `2xlarge` | `2xlarge` (Linux VM) | -==== Arm Architecture +==== Arm architecture -| Docker Executor Resource Class | Remote Docker (Arm Machine) Resource Class | +| Docker resource Class | Remote Docker (Arm Machine) resource class | |-------------------------------|--------------------------------------------| | `arm.medium` | `arm.medium` (Arm VM) | | `arm.large` | `arm.large` (Arm VM) |