RUNet ENTRYPOINTsont deux manières différentes d'exécuter un script.
RUNsignifie qu'il crée un conteneur intermédiaire, exécute le script et fige le nouvel état de ce conteneur dans une nouvelle image intermédiaire. Le script ne sera pas exécuté après cela: votre image finale est censée refléter le résultat de ce script.
ENTRYPOINT signifie que votre image (qui n'a pas encore exécuté le script) créera un conteneur et exécutera ce script.
Dans les deux cas, le script doit être ajouté et un RUN chmod +x /bootstrap.shest une bonne idée.
Cela devrait aussi commencer par un shebang (comme #!/bin/sh)
Compte tenu de votre script ( bootstarp.sh: quelques git config --globalcommandes), il serait préférable d'utiliser RUNce script une fois dans votre Dockerfile, mais en veillant à utiliser le bon utilisateur (le git configfichier global est %HOME%/.gitconfig, qui par défaut est /rootcelui)
Ajoutez à votre Dockerfile:
RUN /bootstart.sh
Ensuite, lors de l'exécution d'un conteneur, vérifiez le contenu de /root/.gitconfigpour confirmer que le script a été exécuté.
bootstarp.shbit exécutable est-il défini?