Ich versuche, CI auf AWS mit dem Jenkins-Image vom Docker-Hub einzurichten. Ich habe einige Stunden in den Prozess investiert (Konfiguration für ein Node-Projekt) und habe nun festgestellt, dass einige meiner npm-Abhängigkeiten make
zum Erstellen erforderlich sind. Das Docker-Image hat weder make
, noch hat es sudo
, also sieht es so aus, als ob ich nicht in der Lage bin apt-get install make
. Gibt es eine andere Möglichkeit, dies zu erreichen, make
ohne das Image mit einem Dockerfile, das Root-Zugriff gewährt, neu erstellen zu müssen?
Antwort1
Das Image ist ein offizielles Basisimage, es hat die minimalen Tools, die für die Arbeit von Jenkins erforderlich sind. Manche Leute wollen make, manche wollen mehrere Versionen von Ruby, Java usw., manche wollen nichts darin, weil sieAgenten.
Aus Sicherheitsgründen wird es gemäß den offiziellen Docker-Image-Richtlinien auch nicht als Root ausgeführt.
Überprüfen Sie dies, umErweitern Sie das Image und installieren Sie weitere Tools
Antwort2
Sie können diesen Befehl ausführen, Bash in Ihren Container laden und dann installieren, was Sie wollen: docker exec -it -u root jenkins bash andernfalls können Sie es in IhremDocker-Datei