我有脚本停止容器,然后删除它们
docker stop $(docker ps -q)
docker rm $(docker ps -a -q)
Run Code Online (Sandbox Code Playgroud)
但我不想删除名为"my_docker"的docker容器.
如何删除除此之外的所有容器?
nwi*_*ler 29
你可以试试这个
grep -v
),然后运行此命令:
docker rm $(docker ps -a | grep -v "my_docker" | awk 'NR>1 {print $1}')
Run Code Online (Sandbox Code Playgroud)
要使用cut
而不是awk
,请尝试以下方法:
docker rm $(docker ps -a | grep -v "my_docker" | cut -d ' ' -f1)
Run Code Online (Sandbox Code Playgroud)
awk
/ cut
usage的示例:bash:获取第n列输出的最短路径
Cyb*_*tic 13
问题的标题要求图像,而不是容器.对于那些想要删除除了一个以外的所有图像的问题的绊脚石,您可以使用docker prune和过滤器标记:
docker image prune -a --force --filter "label!=image_name"
Run Code Online (Sandbox Code Playgroud)
将image_name替换为图像名称.
您还可以使用"until ="标志按日期修剪图像.
这是实际发生的情况docker rm $(List of container Ids)
。因此,这只是如何过滤容器ID列表的问题。
例如:如果您要删除除具有特定容器ID的所有容器之外的所有容器,则docker rm $(docker ps -a -q | grep -v "my_container_id")
可以完成此操作。
归档时间: |
|
查看次数: |
11920 次 |
最近记录: |