Ich habe nicht viel Erfahrung mit Docker (das heißt, ich weiß nur ein bisschen über das Schreiben Dockerfile
und die Konzepte von Docker). Ich möchte ein Docker-Image für CodeBuild erstellen, um meine Anwendung zu erstellen, bin mir jedoch nicht sicher, wie CodeCommit den Code von CodeCommit in mein Docker-Image überträgt.
ich folgtedieses Tutorialüber die Erweiterung von CodeBuild mit benutzerdefinierten Docker-Images, aber ich verstehe immer noch nicht, wie Code von Git in den Container gelangt.
Können Sie mir bitte mit einem Rat weiterhelfen?
Antwort1
Ich nehme an, Sie verwenden CodePipeline und CodeBuild kann ein Eingabeartefakt (ZIP-Datei) erhalten. Der nächste Schritt besteht darin, den Code während des Build-Prozesses mit folgendem Verfahren in das Container-Image zu kopieren:
KOPIEREN {von} {nach}
im Docker-File.
Antwort2
Codebuild holt Code von Codecommit und er wird für uns im Ordner $CODEBUILD_SRC_DIR verfügbar sein. Wenn Sie nun Code in den Docker-Container kopieren möchten, während Docker Build ausgeführt wird, stellen Sie sicher, dass Sie sich im richtigen Verzeichnis ($CODEBUILD_SRC_DIR) befinden und verwenden Sie den COPY-Befehl mit „.“ wie unten:
KOPIEREN ./test /test
Wenn Sie keinen Punkt (.) angeben, wird auf jeden Fall ein Fehler wie der folgende angezeigt: „Kopieren fehlgeschlagen: stat /var/lib/docker/tmp/docker-builder095648372/test: keine solche Datei oder kein solches Verzeichnis“
Hoffentlich hilfreich für neue AWS-Benutzer.