Skip to content
ConfigurationRegistriesDocker Hub

HUB (Docker Hub incl private repositories)

The hub registry lets you configure Docker Hub integration.

logo

The hub registry lets you configure Docker Hub integration.

Currently, the supported credentials are:

  • Docker Hub auth + Docker Hub Access Token
  • Docker Base64 credentials (like in .docker/config.json)
  • Docker Hub auth + Docker Hub password (not recommended)
By default, if you don't configure any registries, drydock will configure a default one with anonymous access. Don't forget to configure authentication if you're using Docker Hub Private Repositories.

Variables

Env varRequiredDescriptionSupported valuesDefault value when missing
DD_REGISTRY_HUB_{REGISTRY_NAME}_LOGINA valid Docker Hub login (required with PASSWORD or deprecated TOKEN)Docker Hub username
DD_REGISTRY_HUB_{REGISTRY_NAME}_PASSWORDA valid Docker Hub password or access token (LOGIN must be defined)Docker Hub password or access token
DD_REGISTRY_HUB_{REGISTRY_NAME}_TOKENDeprecated — accepted as an alias for PASSWORD (LOGIN must be defined; cannot be combined with PASSWORD)Docker Hub access token
DD_REGISTRY_HUB_{REGISTRY_NAME}_AUTHA valid Docker Hub Base64 Auth String (cannot be combined with LOGIN/PASSWORD/TOKEN)Base64 encoded username:password string
Registry auth now fails closed for invalid combinations. LOGIN must be paired with PASSWORD or deprecated TOKEN, and AUTH cannot be combined with LOGIN/PASSWORD/TOKEN. The TOKEN key is a deprecated alias for PASSWORD; use PASSWORD for new configs.

Examples

Configure Authentication using Login/Token

1. Login to your Docker Hub Account

image

2. Go to your Security Settings

  • Create a new Access Token
  • Copy it and use it as the DD_REGISTRY_HUB_PUBLIC_PASSWORD value

image

services:
  drydock:
    image: codeswhat/drydock:v1.5.2
    ...
    environment:
      - DD_REGISTRY_HUB_PUBLIC_LOGIN=johndoe
      - DD_REGISTRY_HUB_PUBLIC_PASSWORD=example-token

Configure Authentication using Base64 encoded credentials

1. Create an Access Token

See above

2. Encode with Base64

Concatenate login:password and encode it locally. Base64 is encoding, not encryption; never send registry credentials to an online encoder.

printf '%s' 'johndoe:example-token' | base64

For example,

  • if your login is johndoe
  • and your password is example-token
  • the resulting encoded string would be am9obmRvZTpleGFtcGxlLXRva2Vu
services:
  drydock:
    image: codeswhat/drydock:v1.5.2
    ...
    environment:
      - DD_REGISTRY_HUB_PUBLIC_AUTH=am9obmRvZTpleGFtcGxlLXRva2Vu