Docker Community Forums

Share and learn in the Docker community.

Docker Cloud API Key

Hello, I’m currently trying to do some automation for Docker Hub, specifically, I’m trying to push the readme/description of a docker image from a Git repo hosted on GitHub.

I can’t seem to find the relevant details on this. At least, everything that I do find seems to be outdated.

So my question is, since Docker Hub API is deprecated, and replaced by Docker Cloud, where do we find the documentation for this? Failing that, is there a way to push a description to a specific repository from my pipeline?

The old documentation is here: Docker Cloud API reference. However, the link from the knowledge base now redirects to the Docker Hub documentation, and “API keys” are nowhere to be found.

If you follow the link to the Log In page at docker.com, you will be redirected to hub.docker.com/sso/start and eventually to some OAuth service at id.docker.com. I’ve been trying to reverse engineer this but the reliance on callback codes returned in query strings make the process painful to automate.

Edit: I just noticed the V2 API was still working. You could try using that example as a base to automate the update of your repo’s description, like thls:

curl 'https://hub.docker.com/v2/repositories/hoshsadiq/myrepo/' \
  -X PATCH \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: JWT ${TOKEN}" \
  --data '{
    "registry": "registry-1.docker.io",
    "full_description": "# My repo\n\nThis is my repo."
  }'