Ich habe ein privates Repository auf DockerHub, die ich versuche, mit ECS bereitzustellen. Ich bekomme immer folgende Fehlermeldung:Amazon ECS private DockerHub Repo: Kann nicht zur Verfügung gestellt Docker Anmeldeinformationen Fehler
Unable to decode provided docker credentials module="ecs credentials" type="dockercfg"
oder wenn ich mit Typ-Docker versuchen:
Unable to decode provided docker credentials module="ecs credentials" type="docker"
ich alle Möglichkeiten auf den ECS-Entwickler-Foren erwähnt versucht haben.
Ich habe versucht:
ECS_ENGINE_AUTH_TYPE=dockercfg
ECS_ENGINE_AUTH_DATA='{"https://index.docker.io/v1/":{"auth":"<token>","email":"<email>"}}'
ich auch versucht:
ECS_ENGINE_AUTH_TYPE=docker
ECS_ENGINE_AUTH_DATA='{"https://index.docker.io/v1/":{"username":"<username>","password":"<password>","email":"<email>"}}'
Und auch (wegen der docs bei https://godoc.org/github.com/aws/amazon-ecs-agent/agent/engine/dockerauth):
ECS_ENGINE_AUTH_TYPE=docker
ECS_ENGINE_AUTH_DATA='{"https://index.docker.io/v1/<username>":{"username":"<username>","password":"<password>","email":"<email>"}}'
Ich habe auch versucht, ohne die '' und mit "" um den JSON .. gleichen Effekt. Ich bekomme immer den gleichen Fehler.
Ich sollte hinzufügen Ich bekomme ecs.config aus einem S3-Container, der funktioniert. Ich habe die Datei auch manuell eingetippt, falls beim Herunterladen der Datei eine zweifelhafte Formatierung auftritt (obwohl ich nicht weiß, wie dies der Fall sein kann, da die S3-Datei als Byte-Stream kommt).
Wenn ich in die Instanz SSH und wie folgt vor:
docker login --username=<username> --password=<password> --email=<email>
dann kann ich erfolgreich das Bild ziehen: docker pull A/B:latest
Aber auch nachdem ich in log (und daher Docker erzeugt die ~/.docker/config.json Datei), bekomme ich immer noch den gleichen Fehler von ECS.
Ich sollte alle Operationen erwähnen in der ecs.config Datei geändert wurden wie folgt durchgeführt:
- ändern Anzahl von Aufgaben auf 0
- Warten
sudo stop ecs
- ändern Konfigurationsdatei zu beenden
sudo start ecs
- Ändern Sie die Anzahl der Aufgaben auf 1
Repeat ...
Es ist immer sehr frustrierend .. Wie sollte diese Arbeit oder wie hat es, da die Änderungen in der Dokumentation geschrieben wurde?
Jede Hilfe wäre willkommen.
EDIT
Ich versuchte auch in der JSON-Konfigurationsdatei in /etc/ecs/ecs.config die Docker Auth einstellen.json:
{
"EngineAuthType": "docker",
"EngineAuthData": {
"https://index.docker.io/v1/": {
"username": "<me>",
"password": "<password>",
"email": "<email>"
}
}
}
Die JSON-Konfiguration hierfür ist hier beschrieben: https://godoc.org/github.com/aws/amazon-ecs-agent/agent/config. Es ist auch hier in den Code-Kommentaren erwähnt: https://github.com/aws/amazon-ecs-agent/blob/b197eddd9d5272eeac7dddaa2a84cc4c85522354/agent/engine/dockerauth/doc.go
Genauer gesagt:
These keys may be set by either setting the environment variables "ECS_ENGINE_AUTH_TYPE" and "ECS_ENGINE_AUTH_DATA" or by setting the keys "EngineAuthData" and "EngineAuthType" in the JSON configuration file located at the configured "ECS_AGENT_CONFIG_FILE_PATH" (see http://godoc.org/github.com/aws/amazon-ecs-agent/agent/config)
Dies ist wieder die gleichen Fehler zu geben ...