Docker API调用的Demo
Docker配置
这一步是可选的,如果你想开发方便调试,则可以通过执行本步骤远程调试开发Docker的代码
开发2375的TCP不加密端口
# /etc/docker/daemon.json
"hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2375"]
重启docker
systemctl restart docker
Demo
安装依赖
pip install docker -i https://mirrors.aliyun.com/pypi/simple
代码示例
import docker
# 显式指定 TCP 地址(替换为你的服务器 IP)
client = docker.DockerClient(base_url='tcp://IP:2375')
containers = client.containers.list(all=True)
for container in containers:
print(f"Container ID: {container.id}, Name: {container.name}, Status: {container. Status}")
输出示例
Container ID: 7d300145c10953870981f1fcaa9f361147a02f14817d62293a80c240d1f0391f, Name: test, Status: running
Container ID: b5c98546e0a33caa542b248ae7902bbb8929931a9d12277b5acb59c2cc84afed, Name: gitea, Status: running
Container ID: 6c674b66a395fde6d81cfc92caf406ad2084bc05d91a2461f14222c996eeae0b, Name: gitea-mysql, Status: running
Container ID: 593b6829d2ca4bafc3669e4a6681078ba875af2f33c2e2279353fe75133399d1, Name: it-tools, Status: running