Problema: tengo que continuar el desarrollo de un proyecto con Laravel, pero esta vez en Windows. Para hacer correr el proyecto ya estamos usando docker, hasta ahí perfecto. Ahora necesito descargar las dependencias, usando PHP Composer, y Node NPM.

Para no tener que instalar PHP ni Node en Windows (que ni me quiero imaginar lo engorroso que puede llegar a ser), lo que se puede hacer es usar sus versiones Dockerizadas.

Basta con correr, en la carpeta raiz del proyecto:

SET pwd=%cd%
docker run --rm -v %pwd%:/app composer/composer install
docker run --rm -v %pwd%:/usr/src/app -w /usr/src/app node:latest npm install

para que Composer y NPM instalen todo lo necesario.

El Truco?: Para conseguir el directorio actual en *NIX basta con usar $(pwd) en el comando de docker (como se muestra en los ejemplos de las imagenes oficiales de Composer y Node), mientras que en Windows es necesario primero hacer SET pwd=%cd% y después recién se puede usar %pwd% en el comando de Docker, diferencia que tuve que aprender googleando un poco.