We use cookies to understand how people use Depot.
Container Builds

Troubleshooting

Resetting build cache for a project

Each project in Depot represents a cache namespace shared among all systems and users that build it. The cache allows certain steps in your Dockerfile to be skipped in subsequent runs if their associated layer hasn't changed since the last time it was built. There can be times when you want to purge this cache.

  • The build is hung because of a deadlock in BuildKit
  • A builder isn't coming online to serve the build request
  • The build cache is full and needs to be cleared

We optimize Depot so that these issues rarely happen. However, if you see any of these issues, you can reset the build cache for a project. Resetting the build cache purges the cache volume and launches a new build machine with a clean slate. You can reset the build cache for a project via these steps:

  1. Go to the project's Settings page
  2. Click the Reset build cache button at the bottom

Multi-platform/multi-architecture image has a 3rd image with platform unknown/unknown

Docker introduced a new provenance feature that tracks some info about the build itself, and it's implemented by attaching the data to the final image "manifest list". Many registries like GitHub Container Registry display the provenance data as an unknown/unknown image architecture. If you don't care about provenance or want a cleaner list in your registry, you can disable provenance during your image build.

depot build --provenance false

Disabling provenance when using depot/build-push-action or depot/bake-action

You can set provenance to false in your workflow step to disable provenance.

- uses: depot/build-push-action@v1
  with:
    ...
    provenance: false
    ...