RUNe ENTRYPOINTsão duas maneiras diferentes de executar um script.
RUNsignifica que ele cria um contêiner intermediário, executa o script e congela o novo estado desse contêiner em uma nova imagem intermediária. O script não será executado depois disso: sua imagem final deve refletir o resultado desse script.
ENTRYPOINT significa que sua imagem (que ainda não executou o script) criará um contêiner e executará esse script.
Em ambos os casos, o script precisa ser adicionado e RUN chmod +x /bootstrap.shé uma boa ideia.
Também deve começar com um shebang (como #!/bin/sh)
Considerando seu script ( bootstarp.sh: alguns git config --globalcomandos), seria melhor usar RUNesse script uma vez em seu Dockerfile, mas certifique-se de usar o usuário certo (o git configarquivo global é %HOME%/.gitconfig, que por padrão é o /rootúnico)
Adicione ao seu Dockerfile:
RUN /bootstart.sh
Em seguida, ao executar um contêiner, verifique o conteúdo de /root/.gitconfigpara confirmar se o script foi executado.
bootstarp.shbit executável está definido?