Cuando haces login en un docker registry por defecto almacena las credenciales (basic auth) en un fichero de texto sin encriptar en $HOME/.docker/config.json
.
Para que no almacene las credenciales ahí y utilice el almacen del sistema (por ejemplo gnome-keyring):
Descargar una release de este proyecto:
https://github.com/docker/docker-credential-helpers/
En este momento la versión es 0.6.0 y puede ser descargada de aquí:
Extraer el fichero docker-credential-secretservice
y colocarlo en algún sitio en el $PATH
.
Hacer logout de los registry a los que estés logado actualmente:
$ docker logout docker.registry.url
Modificar $HOME/.docker/config.json
añadiendo la clave credStore
con el valor secretservice
.
{ "auths": { "docker.registry.url": {} }, "HttpHeaders": { "User-Agent": "Docker-Client/18.09.1 (linux)" }, "credsStore": "secretservice" }
Esto es para GNU/Linux, para el resto de sistemas ver el siguiente enlace ya que no lo he probado:
https://docs.docker.com/engine/reference/commandline/login/#credentials-store