Running a docker image only works on the computer the image was built on

Have a problem. I built a docker image about 3 years ago, on my intel mac. For all my projects, I pull it, start a container that binds a path to a project folder and puts me in a my ubuntu bash shell. If for example (keeping it simple here) I run grunt, no problem.

However, if I rename my bound project folder, start a new container where I’m placed into my ubuntu bash shell, and run gulp, gulp isn’t found.

Second example (my goal here), if i pull the image, create the same container (which puts me in a bash shell), on a different computer (windows 11 with wsl2), i get gulp isn’t found.

I thought that all the settings and dependencies were stored inside an image whereas if I pull the image on a different computer, it should run fine. (all amd64 intel chipsets)?

Can someone give me some advice?

First you say you run grunt and that works and then you say gulp isn’t found. Why do you expect gulp to be installed as well?