I just ran into this issue myself so I hope this helps others. I set up a new Docker Registry following the documentation and configured the S3 storage driver to use DigitalOcean Spaces.
I created a new Space to host the registry's data.
That was the issue. Docker Registry (now called Distribution?) didn't like the fact that the Space (or S3 bucket) was empty. Per this suggestion on the related GitHub issue, I uploaded a random file to my Space. That took care of the issue.
For the record, here's the config I'm using:
bucket: SPACE NAME HERE
with the Spaces API tokens passed through these two env vars:
Config source—thanks ASB! 😄
I had to remove the
keyid: mykeyidline for it to work.