RUN and ENTRYPOINT are two different ways to execute a script.
RUN means it creates an intermediate container, runs the script and freeze the new state of that container in a new intermediate image. The script won't be run after that: your final image is supposed to reflect the result of that script.
ENTRYPOINT means your image (which has not executed the script yet) will create a container, and runs that script.
In both cases, the script needs to be added, and a RUN chmod +x /bootstrap.sh is a good idea.
It should also start with a shebang (like #!/bin/sh)
Considering your script (bootstrap.sh: a couple of git config --global commands), it would be best to RUN that script once in your Dockerfile, but making sure to use the right user (the global git config file is %HOME%/.gitconfig, which by default is the /root one)
Add to your Dockerfile:
RUN /bootstrap.sh
Then, when running a container, check the content of /root/.gitconfig to confirm the script was run.
bootstarp.shhave the executable bit set?docker exec -it symfony bashinside the container, can you manually run the script, and check its contents? (cat bootstarp.sh)?docker exec symfony /bin/bash /bootstarp.shand let me know the output.