Last month, we revealed what we have been building in our nights and weekends over the past year. We launched Depot in closed beta to provide everyone with an early peek at how we can improve the performance of Docker builds.
It's been exciting to see the response and iterate on the feedback we have received. To see a service, that we built to solve a problem for ourselves, working to solve the same problem for others is an inspiring experience.
With all the feedback, we have gotten over the past month, we figured it was time to start a changelog series to keep everyone informed of our progress. Think of this as a way for us to recap what we built over the past month, what projects we are working on, and what we are thinking about in terms of the bigger Depot vision.
Let's dig in.
depot CLI 0.1.0
From the first line of code we wrote for
depot we wanted it to be very easy to switch to it from
docker. It is critical, in our opinion, that the ability to try out new tools and technologies have the lowest barrier to entry as possible. So, we have built our CLI with that in mind, it takes all the same flags as
docker build right out of the box.
depot 0.1.0 which makes a small change to the built image transfer. With this release, we now leave the image on the remote builder instance. This was previously done by passing the
--no-load flag. We decided to switch this behavior so that when you are running builds in your CI environment you are not unnecessarily waiting for the image to be transferred back to you when you may not need it. If you do need the built image for running it locally or running integration tests in CI, you can use the
--load flag to tell our remote builder to transfer the built image back. You can read the full release notes here.
Docs, docs, docs
When we first launched the beta, our documentation was limited to our Quickstart Guide. But we have added a lot more over the past few weeks. Notably, we have added integration guides for CI providers like GitHub Actions, CircleCI, Travis CI, and Google Cloud Build so you can quickly try out Depot inside your existing CI provider. If you prefer to try out Depot locally, we also put together a Local Development guide to get you started.
depot/build-push-action GitHub Action
We wanted to make it simple to try Depot in your existing GitHub Action workflows. So, we released
depot/build-push-action, that implements the same inputs and outputs as
docker/build-push-action but makes uses of our
depot CLI to run your build.
Bonus: We now support OIDC token authentication in GitHub Actions 🎉
Our new GitHub Action also allows you to use GitHub's OIDC token as authentication to
depot build. No more static access keys in GitHub Actions!
If you set the
permissions block in your action workflow and make use of
depot/build-push-action you can authenticate builds via OIDC and don't need to generate a user access token.
jobs: build: runs-on: ubuntu-20.04 permissions: contents: read id-token: write steps: - uses: actions/checkout@v3 # The depot CLI still needs to be available in your workflow - uses: depot/setup-action@v1 - uses: depot/build-push-action@v1 with: context: . push: true
If you want to see an example of this new authentication method in action, you can check out our
moby/moby benchmark workflow.
The closed beta and the feedback from early adopters has allowed us to iterate on new ideas and gauge the usefulness of Depot. With that in mind, here are a few we are working on over the next few weeks:
- Our first open-source project outside our
depotCLI, a way to leverage R2 for a fast self-hosted image registry
- The first iteration of our smarter dependency aware caching tier
- Better benchmark comparisons for open-source projects that are needing multi-platform builds
We are looking to bring Depot out of beta sometime in the next month. The system is stable and the feedback we have gotten from our early adopters has been very valuable. We are always open to any additional feedback from folks that are looking to make working with Docker and container images a bit easier. You can still sign up for Depot while we are in closed beta and give it a try or email us directly with feedback.
Stay tuned for more details about our general availability and new features we are adding!