Wenn ich versuche, ein Bild (Trägerwelle) in der Produktionsumgebung (EC2) zu veröffentlichen, tritt der folgende Fehler auf.
Die angezeigte (geladene) AWSAccessKeyId ist der alte Schlüssel, den Sie zuvor verwendet haben. Da der alte Zugriffsschlüssel aus der Fehleranweisung gelesen wurde, wurde beurteilt, dass der Fehler aufgrund von Inkonsistenzen aufgetreten ist.
Die Zugriffsschlüssel-ID, die ich in .bash_profile exportiert habe, war sicherlich alt. Ich habe es auf einen neuen Zugriffsschlüssel aktualisiert, die .env-Datei, IAM, aws configure list überprüft und bestätigt, dass es auf die neueste Zugriffsschlüssel-ID aktualisiert wurde, aber wenn ich das Bild poste, wird der gleiche Fehler angezeigt. Da Docker verwendet wird, gibt es keine Änderung, auch wenn alte Bilder gelöscht werden.
lokal
$ aws configure list
AWS Access Key ID [None]: AKIA...(Neuer Zugangsschlüssel)
AWS Secret Access Key [None]: KEY...(Neuer Zugangsschlüssel)
Default region name:--- ---.
Default output format: json
Wo ich ratlos war
** Ich erinnerte mich plötzlich an die Worte meines Vorgängers: "Wenn mit EC2 etwas schief geht, starten Sie zuerst die EC2-Instanz neu." ** ** **
Ich dachte: "Oh, das ist die richtige Antwort." Wahrscheinlich wird es nicht richtig geladen, ohne die EC2-Instanz neu zu starten. Ich habe mich mit exit von der EC2-Instanz abgemeldet und mich erneut angemeldet (ssh) hat nicht funktioniert.
** Der Neustart der EC2-Instanz wurde wie erwartet behoben und ich konnte das Image normal veröffentlichen. ** ** **
Starten Sie mit der AWS CLI die EC2-Instanz neu, wenn Sie den alten Schlüssel vom Terminal in den neuen Schlüssel ändern!
Wenn die AWS-Zugriffsschlüssel-ID usw. die neueste ist, aber der gleiche Fehler wie bei mir auftritt, starten Sie die EC2-Instanz, die Sie zuerst verwenden, neu.