Remote Docker Updates

Hey Everyone,

I just wanted to announce some changes to “Remote Docker” support on CircleCI.
But first, in case you’re not sure what remote Docker is, this is the CircleCI provided feature that spins up a remote Docker daemon/server that is connected via TCP/IP from a Docker client. Typically this is used together with the Docker executor and you’ll have the setup_remote_docker special step in your job’s config.

What’s changing today?

In order to avoid unavailability of a couple of Docker versions due to the recent old Linux VM deprecation, we are aliasing two Docker versions to a different version. If you use Docker version 19.03.12 or 19.03.14 for the setup_remote_docker step, instead your job will be given a Docker server running v19.03.13.

What’s Changing in the future?

In the next 6 months or so, we will be changing the default version of Docker provided when setup_remote_docker is used in a job without specifying a version. Currently, the default version is Docker v17.09.0-ce, which is very, very old.

Our Recommendation

Whether or not you’r affected by today’s change, if you’re not currently using a modern Docker version, such as v20.10.x, I would suggest updating now. Newer versions of Docker have new features, better support for multiarch tasks, availability of buildx, and in many situations can be more performant.

Here’s how it looks to specify a version:

jobs:
  my-job:
    docker:
      - image: cimg/base:current
    steps:
      - checkout
      - setup_remote_docker:
          version: 20.10.11