que - registrarse en docker




No se puede iniciar sesión en la cuenta de Docker (4)

OS: Ubuntu 18.04 Server
Docker 18.3 CE

He iniciado sesión en el servidor, desde mi computadora portátil con Windows 10, usando una sesión PuTTY SSH.

No tengo Docker en mi computadora portátil con Windows local, por lo que todo el trabajo se realiza en el servidor remoto.

Puedo ejecutar todos los comandos de Docker, en el servidor remoto, usando la sesión de terminal.

Sin embargo, cuando intento guardar mi imagen en el Docker Hub, cuando intento iniciar sesión, utilizo:

docker login

Me sale el siguiente mensaje de error:

error getting credentials - err: exit status 1, out: `GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.secrets was not provided by any .service files`

No recibí ningún mensaje de error cuando creé mi imagen en el servidor remoto.

Tampoco veo una carpeta .docker en el directorio de inicio relacionado en el servidor remoto. ¿Algunas ideas?


Editar 2019-04-07:

Como esta es la respuesta actualmente seleccionada, creo que la gente debería probar la solución @Anish Varghese a continuación primero, ya que parece ser la más fácil. Solo necesita instalar los paquetes gnupg2 y pass:

sudo apt install gnupg2 pass

Si no funciona, puedes probar mi solución original aquí:

Tuve el mismo problema. La respuesta de bak2trak funcionó, pero guardó las credenciales en texto claro. Aquí está la solución si desea mantenerlos en un almacén de contraseñas.

1) Descargue docker-credential-pass de https://github.com/docker/docker-credential-helpers/releases

2) tar -xvf docker-credential-pass.tar.gz

3) chmod u+x docker-credential-pass

4) mv docker-credential-pass /usr/bin

5) Deberá configurar docker-credential-pass (los siguientes pasos se basan en https://github.com/docker/docker-credential-helpers/issues/102#issuecomment-388634452 )

5.1) instalar gpg y pass ( apt-get install gpg pass )

5.2) gpg --generate-key , ingrese su información. Debería ver algo como esto:

pub   rsa3072 2018-10-07 [SC] [expires: 2020-10-06]
      1234567890ABCDEF1234567890ABCDEF12345678

Copie la línea 123 ...

5.3) pass init 1234567890ABCDEF1234567890ABCDEF12345678 (pegar)

5.4) pass insert docker-credential-helpers/docker-pass-initialized-check y establezca la siguiente contraseña "pass is initialized" (sin comillas).

5.5) pass show docker-credential-helpers/docker-pass-initialized-check . Debería ver que el pase se inicializa.

5.6) lista de docker-credential-pass list

6) crea un ~ / .docker / config.json con:

{
"credsStore": "pass"
}

7) el inicio de sesión de Docker ahora debería funcionar

Nota: Si obtiene el error "el almacén de pases no está inicializado" en una ejecución futura, ejecute el siguiente comando (volverá a cargar el almacén de pases en la memoria):

pass show docker-credential-helpers/docker-pass-initialized-check

Le pedirá su contraseña e inicializará el almacén de pases.

Esto se basa en esta discusión: https://github.com/moby/moby/issues/25169#issuecomment-431129898


Enfrenté el mismo problema en ubuntu 18.08 y esto finalmente funcionó para mí ... como una solución temporal.

Había creado esta carpeta home/.docker/ ya que algunas soluciones me sugirieron crear un archivo config.json y escribir las credenciales predeterminadas en él, es decir

{
    "credsStore": "pass"
}
  • config.json este archivo config.json .
  • Luego renombrado docker-credential-secretservice a algo más para que no recoja este archivo.

    sudo mv / usr / bin / docker-credential-secretservice / usr / bin / docker-credential-secretservice_x

¡Y funcionó!


Instale los siguientes paquetes en ubuntu

sudo apt install gnupg2 pass

Esto me funcionó.


Para mí, el docker push falló con

denied: requested access to the resource is denied

... así que quería docker login pero obtuve lo siguiente después de ingresar las credenciales:

Remote error from secret service:
  org.freedesktop.DBus.Error.UnknownMethod:
  No such interface 'org.freedesktop.Secret.Collection' on object at path
  /org/freedesktop/secrets/collection/login

Error saving credentials:
  error storing credentials - err: exit status 1, out:
  No such interface 'org.freedesktop.Secret.Collection' on object at path
  /org/freedesktop/secrets/collection/login

Afortunadamente, tenía otra máquina disponible en la que podía iniciar sesión sin ningún cambio en el sistema. Copié el contenido de ~/.docker/config.json ...

{
        "auths": {
                "https://index.docker.io/v1/": {
                        "auth": "<some-hash-value>"
                }
        },
        "HttpHeaders": {
                "User-Agent": "Docker-Client/18.09.2 (linux)"
        }
}

... a la otra máquina y el docker push funcionó.





docker