Skip to content
Latchkey

CircleCI "Docker Layer Caching is not available" - Fix DLC

You enabled Docker Layer Caching (DLC) but CircleCI says it is not available, so every docker build rebuilds all layers. DLC needs a supporting plan and the right executor setup.

What this error means

A warning that "Docker Layer Caching is not available", and builds never reuse layers - each run rebuilds from scratch and is slow. The docker_layer_caching: true flag is effectively ignored.

job log
Docker Layer Caching is not available on your current plan,
or not supported for this executor. Building without layer cache.

Common causes

Plan does not include DLC

Docker Layer Caching is a paid feature. On a plan without it, the flag is accepted but no layer cache is provided.

DLC set where it is not supported

DLC applies to setup_remote_docker and the machine executor. Setting docker_layer_caching in the wrong place has no effect.

Expecting DLC to persist forever

DLC caches are best-effort and can be evicted. A cold cache after eviction looks like "no caching", which is expected behavior, not a bug.

How to fix it

Enable DLC on a supported executor

.circleci/config.yml
jobs:
  build-image:
    docker:
      - image: cimg/base:current
    steps:
      - checkout
      - setup_remote_docker:
          docker_layer_caching: true
      - run: docker build -t app .

Fall back to BuildKit inline cache

When DLC is unavailable, use a registry-backed build cache so layers persist without DLC.

.circleci/config.yml
- run: |
    export DOCKER_BUILDKIT=1
    docker build \
      --cache-from myorg/app:cache \
      --build-arg BUILDKIT_INLINE_CACHE=1 \
      -t myorg/app:latest .

How to prevent it

  • Confirm your plan includes DLC before relying on it.
  • Set docker_layer_caching only under setup_remote_docker/machine.
  • Use a registry cache (--cache-from) as a portable fallback.

Frequently asked questions

What causes ""DLC not available""?
Docker Layer Caching is a paid feature. On a plan without it, the flag is accepted but no layer cache is provided.
How do I fix "DLC not available"?
Enable DLC on a supported executor

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card