# Changes to Remote Docker Reporting & Pricing

**URL:** <https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759>\
**Category:** Build Environment\
**Created:** [April 13, 2023, 3:51pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759 "2023-04-13T15:51:43Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [April 13, 2023, 3:51pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/1 "2023-04-13T15:51:43Z")

</div>

CircleCI has significantly improved the execution speed and reliability of jobs that use the [setup\_remote\_docker](https://circleci.com/docs/building-docker-images/) feature.

[Our new implementation](https://discuss.circleci.com/t/setup-remote-docker-architecture-change/45303) of the underlying architecture that powers jobs using setup\_remote\_docker gives you better **flexibility** , **reliability** , **performance**.

**Before** : All jobs that used setup\_remote\_docker used a primary container that was the size of the resource class specified in config.yml & a _remote_ medium-sized Linux virtual machine to execute Docker commands, regardless of the resource class size specified in `.circleci/config.yml`. The number of compute credits/min for the job was dictated by the container size, the remote virtual machine was not charged for.

These jobs sent network traffic across the internet between the container and the virtual machine which would result in both transient network failures and slow job performance.

**Now:** You can rightsize the remote Docker engine to use as little or as much compute as you need as all remote docker jobs only run in one virtual machine. There is also no cross-internet network transfer which speeds up job performance and makes the jobs more reliable. The number of compute credits/min will be dictated by the size of the virtual machine (see “Pricing update” below).

Starting June 15, 2023, jobs that use setup\_remote\_docker will be identified with a “Remote Docker” [executor](https://circleci.com/docs/executor-intro/) in the CircleCI UI, instead of “Docker Executor” (see example below).

This will help you easily see which jobs use setup\_remote\_docker in the Plan Usage page, Insights, and other parts of the CircleCI web app, and compare their performance with non-remote Docker jobs:

 ![](https://global.discourse-cdn.com/circleci/original/3X/e/d/ed1bd0c624179badbafeffd4f0255a3c1e15486c.png)

**Pricing update, effective June 15, 2023**  
The pricing for jobs using the new remote Docker executor will be:

![image](https://global.discourse-cdn.com/circleci/original/3X/a/7/a7cae20ba5e905f74d7bd86d6d63294cccdc0561.png)

If a job defined in your `.circleci/config.yml` file uses a Small Docker resource class with the setup\_remote\_docker feature, starting June 15, 2023, the job will execute and appear in the CircleCI UI as Executor = Remote Docker, Resource Class = Medium.

If a job defined in your `.circleci/config.yml` file uses a Medium+ Docker resource class with the setup\_remote\_docker feature, starting June 15, 2023, the job will execute and appear in the CircleCI UI as Executor = Remote Docker, Resource Class = Large.

No action is required on your part. Adjust your resource class sizes to fit your team’s needs. If you have questions, comment below.

---

<div class="post-metadata">

**Author:** ![ms1111](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/ms1111/32/25750_2.png) [@ms1111](https://discuss.circleci.com/u/ms1111)\
**Post date:** [April 19, 2023, 4:25pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/2 "2023-04-19T16:25:39Z")

</div>

Hi,

Just to confirm my understanding, is the following correct?

1. Previously, `setup_remote_docker` was always using Medium - 10 credits/min
2. Now, it’s still using 10 credits/min, if you don’t override the resource class.
3. If you have a `resource_class: "medium+"` and `setup_remote_docker` in the same job, previously it would use 10 credits/min, now it will use 20 credits/min since medium+ is shifted to large.
4. If you have `resource_class: "small"` and `setup_remote_docker` in he same job, previously it would use 10 credits/min (medium); now it will still use 10 credits/min, since small is shifted to medium.

So essentially no cost increase unless you were previously specifying a larger resource class for the job that has `setup_remote_docker`.

Thanks,  
Mike

---

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [April 19, 2023, 4:51pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/3 "2023-04-19T16:51:08Z")

</div>

I’ve edited the original post for clarity, one clarification:

“All jobs that used setup\_remote\_docker used a _primary container_ that was the size of the resource class specified in config.yml & a _remote medium-sized Linux virtual machine_ to execute Docker commands, regardless of the resource class size specified in `.circleci/config.yml`.”

So for #1 in your list, previously all jobs would be charged for the Docker resource class that was specified in config.yml, and regardless of size specified, all jobs would use an _additional_ remote medium-sized Linux VM to execute the remote docker commands. That means that if you specified xlarge, you would be charged 40 credits because your primary container was xlarge, but the remote Linux VM used to execute Docker commands would be a Medium. There was no additional charge for that remote Medium Linux VM.

For #2, if you do not override the resource class, you will continue to get the default size and there is no price change.

For #3 & #4, slight modifications given what I mentioned above. Previously medium+ would have used _15_ credits, now it will use 20. Small would have used _5_ and now it will use 10 credits.

---

<div class="post-metadata">

**Author:** ![ravenouschicken](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/ravenouschicken/32/32878_2.png) [@ravenouschicken](https://discuss.circleci.com/u/ravenouschicken)\
**Post date:** [April 25, 2023, 8:54am UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/4 "2023-04-25T08:54:29Z")

</div>

So the small resource class is gone entirely? Not on Docker, and not on Linux either?

90% of my minutes are running on the small resource class, so this change doubles my credit usage. Not really happy about this, is there no way to keep using the small resource class?

---

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [April 25, 2023, 12:59pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/5 "2023-04-25T12:59:32Z")

</div>

@ravenouschicken If your job is not using Remote Docker (setup\_remote\_docker), you can still use the Docker Small resource class. That is not going away.

There has never been a small Linux VM resource class: [CircleCI Resource Classes - CircleCI](https://circleci.com/product/features/resource-classes/)

If you were using a Small resource class with a job _that uses Remote Docker_, that job will now start to use a medium resource class.

---

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [May 3, 2023, 4:15pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/6 "2023-05-03T16:15:28Z")

</div>

In preparation for these upcoming pricing changes to jobs that use the [setup\_remote\_docker](https://circleci.com/docs/building-docker-images/) feature (aka Remote Docker), we have updated the Job Details UI to enable users to distinguish between Docker jobs that use the Remote Docker feature and jobs that do not. Previously, this distinction was not obvious in the UI.

![Screen Shot 2023-05-03 at 11.57.48 AM](https://global.discourse-cdn.com/circleci/original/3X/6/a/6ae4ac0036975d532f640e4cc7665242e77161c3.png)

As of today, the UI will now show “Remote Docker” as the Executor on the Job Details page. As a follow-up, we will start sending this new executor name to other parts of the UI including the Plan Usage page and Insights. No changes are needed from the user’s end for this to take effect.

Please also note that the following API will now report executor = `remote-docker` instead of `docker` in their response for jobs that use Remote Docker:

```auto
/api/v1/project/:user/:prj/:num
/api/v1.1/project/:vcs/:user/:prj/:num
/api/v2/project/:vcs/:user/:prj/job/:num

```

---

<div class="post-metadata">

**Author:** ![jodastephen](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/jodastephen/32/21489_2.png) [@jodastephen](https://discuss.circleci.com/u/jodastephen)\
**Post date:** [May 22, 2023, 10:40pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/7 "2023-05-22T22:40:36Z")

</div>

This forum post and associated emails are completely unclear. You are planning a 150% price increase for xlarge! WIthout any justification of the increase, especially compared to the price of medium and large. How on earth can xlarge be 5 times the price of large for twice the compute? And you appear to be providing no mitigation or alternative to avoid the massive price hike?

Saying “No action is required on your part” is utterly inaccurate.

> You can rightsize the remote Docker engine to use as little or as much compute as you need as all remote docker jobs only run in one virtual machine.

What does this actually mean? Are you implying there is some new config that needs setting so that the docker part can run on a smaller resource class than the main build? Note that splitting the build into separate jobs would be incredibly painful. The first link goes to a documentation page that provides very little info before linking back to this forum post.

Please explain what on earth is going on here.

---

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [May 23, 2023, 12:37pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/8 "2023-05-23T12:37:04Z")

</div>

> [@jodastephen](#):
>
> What does this actually mean? Are you implying there is some new config that needs setting so that the docker part can run on a smaller resource class than the main build? Note that splitting the build into separate jobs would be incredibly painful. The first link goes to a documentation page that provides very little info before linking back to this forum post.

All jobs that use Remote Docker [now run as a Linux VM](https://discuss.circleci.com/t/setup-remote-docker-architecture-change/45303) “under the hood”. The new price for the Remote Docker xlarge resource class is the same as the [price of our Linux VM xlarge resource class.](https://circleci.com/product/features/resource-classes/) The [new prices](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759)for Remote Docker jobs match the equivalently-sized Linux VM resource class prices.

Previously, an xlarge using Remote Docker would run with an xlarge [primary container](https://circleci.com/docs/glossary/#primary-container) and Docker commands would be run in a remote, medium-sized Linux VM. Now, the entire job runs in an _xlarge Linux VM_.

The alternative is to use a smaller resource class for jobs that run Docker commands. You can view [CPU/RAM usage in the “Resources” tab](https://circleci.com/blog/optimize-resources-dashboard/) for each job as well as historical trends with “[Resource Class Insights](https://circleci.com/docs/resource-class-overview/#resource-class-insights)” to see whether the job is possibly over-provisioned on resources.

---

<div class="post-metadata">

**Author:** ![jodastephen](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/jodastephen/32/21489_2.png) [@jodastephen](https://discuss.circleci.com/u/jodastephen)\
**Post date:** [May 23, 2023, 3:35pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/9 "2023-05-23T15:35:03Z")

</div>

Can we switch back to the older architecture? AFAIK we never had any problem with it.

(Our docker access is fully integrated with our main build. We can’t just spin up a separate job for the docker part. And anyway using multiple jobs in one script is a huge PITA that slows the build down massively)

Can you see how this just looks like price gouging? Where is the justification for xlarge costing 5 times large?

---

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [May 24, 2023, 4:48pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/10 "2023-05-24T16:48:58Z")

</div>

@jodastephen

There is unfortunately no way to switch to the old architecture. Totally fair feedback on the messaging, I should have made it more clear. I’ll ensure that future messaging is crisper.

The 5x increase is a product of the new Remote Docker prices being changed to match the prices of Linux VM resource classes and that is how our Linux VM resource classes [are priced](https://circleci.com/product/features/resource-classes/). The Linux VM resource class prices have several factors that go into them, not exclusively the CPU/RAM specs, which is one of the reasons why there is that discrepancy between Large & Xlarge.

---

<div class="post-metadata">

**Author:** ![rit1010](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/rit1010/32/34738_2.png) [@rit1010](https://discuss.circleci.com/u/rit1010)\
**Post date:** [May 24, 2023, 5:01pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/11 "2023-05-24T17:01:04Z")

</div>

One answer for this issue is to look at self-hosted runners. Their value is very dependent on your exact needs and you may need to refactor your process to get full value from them, but in the right situation, they can be very useful.

As a simple example, I use self-hosted runners that are just instances defined within a VMWARE stack I built on services from a hosting company called ScaleWay. As I already have the resources I just do my builds on a VMWARE instance and let VMWARE handle the resource allocation. The advantage is that the job can take as long as I (or it) likes and I’m not paying per-minute fees.

---

<div class="post-metadata">

**Author:** ![sebastian-lerner](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/sebastian-lerner/32/27833_2.png) [@sebastian-lerner](https://discuss.circleci.com/u/sebastian-lerner)\
**Post date:** [June 15, 2023, 1:33pm UTC](https://discuss.circleci.com/t/changes-to-remote-docker-reporting-pricing/47759/12 "2023-06-15T13:33:29Z")

</div>

FYI, the pricing change is effective as of today, June 15.
