Obviously the correct thing for such a use case would be building their own image with whatever tools are needed and then using that.
Unfortunately, then they’d probably get roasted for not maintaining the image well enough and not having proper enough automation set up to keep it recent in Docker Hub or wherever, which they’d then also have to do. On an individual level, it’s easier to just hold it wrong and do what works. Could also build the image locally once, but again, more work.
I think the ideal DX on Docker’s side would be:
docker run some-container --pre-requisites “pip install…”
Basically support for some list of commands needing to be done, which would build an intermediate image locally and reuse it whenever the same base image and prerequisite command is used in a run command. Then you could avoid doing unnecessary init in the container itself and keep using silly little scripts without having to push reusable images and keep them up to date yourself.