Stop all docker containers at once on Windows

You could create a batch-file (.bat or .cmd) with these commands in it:

@ECHO OFF
FOR /f "tokens=*" %%i IN ('docker ps -q') DO docker stop %%i

If you want to run this command directly in the console, replace %%i with %i, like:

FOR /f "tokens=*" %i IN ('docker ps -q') DO docker stop %i

In Git Bash or Bash for Windows you can use this Linux command:

docker stop $(docker ps -q)

Note: this will fail if there are no containers running

For PowerShell, the command is very similar to the Linux one:

docker ps -q | % { docker stop $_ }

For those who are interested this can be accomplished in Powershell using

docker ps -q | % { docker stop $_ }