Bearbeiten 2019-04-07:
Da dies die derzeit ausgewählte Antwort ist, sollten die Leute zuerst die unten stehende @ Anish Varghese-Lösung ausprobieren, da dies die einfachste zu sein scheint. Sie müssen nur gnupg2 installieren und Pakete übergeben:
sudo apt install gnupg2 pass
Wenn es nicht funktioniert, können Sie meine ursprüngliche Lösung hier ausprobieren:
Ich hatte das gleiche Problem. Die Antwort von bak2trak hat funktioniert, aber die Anmeldeinformationen wurden im Klartext gespeichert. Hier ist die Lösung, wenn Sie sie in einem Passwortspeicher aufbewahren möchten.
1) Laden Sie den Docker-Berechtigungsnachweis von https://github.com/docker/docker-credential-helpers/releases herunter
2) tar -xvf docker-credential-pass.tar.gz
3) chmod u+x docker-credential-pass
4) mv docker-credential-pass /usr/bin
5) Sie müssen den Docker-Berechtigungsnachweis-Pass einrichten (die folgenden Schritte basieren auf https://github.com/docker/docker-credential-helpers/issues/102#issuecomment-388634452 ).
5.1) installiere gpg und pass ( apt-get install gpg pass
)
5.2) gpg --generate-key
, geben Sie Ihre Daten ein. Sie sollten so etwas sehen:
pub rsa3072 2018-10-07 [SC] [expires: 2020-10-06]
1234567890ABCDEF1234567890ABCDEF12345678
Kopieren Sie die Zeile 123 ...
5.3) pass init 1234567890ABCDEF1234567890ABCDEF12345678
(Paste)
5.4) pass insert docker-credential-helpers/docker-pass-initialized-check
und setzen Sie das nächste Passwort "Pass wird initialisiert" (ohne Anführungszeichen).
5.5) pass show docker-credential-helpers/docker-pass-initialized-check
. Sie sollten sehen, dass der Pass initialisiert ist.
5.6) docker-credential-pass list
6) Erstellen Sie eine ~ / .docker / config.json mit:
{
"credsStore": "pass"
}
7) Docker Login sollte jetzt funktionieren
Hinweis: Wenn bei der zukünftigen Ausführung die Fehlermeldung "Passspeicher ist nicht initialisiert" angezeigt wird, führen Sie den folgenden Befehl aus (der Passspeicher wird im Speicher neu geladen):
pass show docker-credential-helpers/docker-pass-initialized-check
Sie werden nach Ihrem Passwort gefragt und der Passspeicher wird initialisiert.
Dies basiert auf dieser Diskussion:
https://github.com/moby/moby/issues/25169#issuecomment-431129898
docker login
aus einem LXD / LXC-Container heraus zu laufen . Dieses Problem habe ich gelöst, indem ich es.docker/config.json
von meinem Host in mein$HOME/.docker/
Verzeichnis innerhalb des LXD / LXC-Containers kopiert habe , den ich manuell erstellt habe. Ich versuche gerade, ein anderes Problem herauszufinden, wollte aber fragen, ob Sie dies bereits versucht haben?