You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在网页中列出所有已停止的Docker容器?现有代码仅返回最后一个删除容器

问题分析

你当前的代码在循环中每次都会覆盖message变量的值,所以最后return message只会返回最后一个被删除容器的信息,而非所有被删除容器的内容。

解决方案

可以通过收集所有删除信息再统一返回的方式解决,以下是两种可行实现:

方式1:用列表收集后拼接

import docker
client = docker.from_env()

stopped_containers = client.containers.list(filters={'status': 'exited'})
messages = []

for container in stopped_containers:
    container.remove(force=True)
    msg = f"Removed containers {container.name}."
    messages.append(msg)
    print(msg)

# 将所有消息拼接为换行分隔的字符串返回
return '\n'.join(messages)

方式2:直接拼接字符串

import docker
client = docker.from_env()

stopped_containers = client.containers.list(filters={'status': 'exited'})
message = ""

for container in stopped_containers:
    container.remove(force=True)
    msg = f"Removed containers {container.name}."
    message += msg + '\n'
    print(msg)

# 可选:移除末尾多余的换行符
return message.rstrip('\n')

修改后返回的内容会包含所有被删除容器的信息,网页上即可展示完整的删除概况。

内容的提问来源于stack exchange,提问作者Jelly2882

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 01:15:30