docker-api
# -*- coding: UTF-8 -*- import docker #初始化客户端 client = docker.from_env() #from_env Return a client configured from environment variables. #连接环境变量中的docker 如 DOCKER_HOST DOCKER_TLS_VERIFY DOCKER_CERT_PATH # client = docker.DockerClient(base_url='unix://var/run/docker.sock') # client = docker.DockerClient(base_url='tcp://172.29.206.148:2375') # for container in client.containers.list(): # print(container.id) # print(container.short_id) # print(container.name) # print(container.status) # print(container.image) # print(container.attrs) #all=True 默认只列出running的容器 container_list=[] for container in client.containers.list(all=True): container_info={} container_info["name"]=container.name container_info["id"]=container.id container_info["short_id"]=container.short_id container_info["status"]=container.status container_info["image"]=container.image.tags container_list.append(container_info) # for i in container_list: # for k,v in i.items(): # print "key %s , val %s" %(k,v) #获取容器进行操作 #container=client.containers.get("***") 可以是容器的id或name或short_id #force=True running的容器正常删除须先stop在 remove # 强制删除须加 force=True for i in container_list: container=client.containers.get(i["id"]) print("operate %s",%(i["name"])) container.stop() container.rename()#重命名 container.kill()#强制停止 container.start()#启动 Container.restart()#重启 container.remove(force=True)#running的容器强制删除须加 force=True # 列出镜像 for i in client.images.list(): print i.id print i.short_id print i.tags # 删除镜像 client.images.remove("c9d43a597ff0")
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程