Iss*_*ram 29 command-line docker
如何停止在Windows上运行的所有docker容器?
docker stop
仅适用于1个容器.
任何使它停止所有容器的命令/脚本?
huy*_*itw 52
您可以使用以下命令创建批处理(.bat)文件:
@ECHO OFF
FOR /f "tokens=*" %%i IN ('docker ps -q') DO docker stop %%i
Run Code Online (Sandbox Code Playgroud)
如果要直接在控制台中运行此命令,请替换%%i
为%i
:
FOR /f "tokens=*" %i IN ('docker ps -q') DO docker stop %i
Run Code Online (Sandbox Code Playgroud)
在Git Bash或Bash for Windows中,您可以运行:
docker stop $(docker ps -q)
Run Code Online (Sandbox Code Playgroud)
小智 29
对于那些感兴趣的人,可以在Powershell中使用
docker ps -q | % { docker stop $_ }
Run Code Online (Sandbox Code Playgroud)
如果问题的动机是恢复 Docker 占用的内存(就我而言,这就是我到达此页面的原因),我发现唯一的方法是完全停止 Docker Desktop。您可以通过右键单击通知区域(右下角)中的鲸鱼图标>退出 Docker Desktop 来执行此操作。当您重新启动 Docker Desktop 时,所有容器都会重新出现,并且 Docker 甚至会自动将它们重新设置。