使用 Python-on-whales 从 Python 调用 Docker CLI
随着 Docker 使用的增加,用户希望从 shell 以外的编程语言调用 Docker。从 Python 使用 Docker 的一种流行方法是使用docker-py。这个库取得了巨大的成功,甚至docker-compose是用 Python 编写的,并利用了 docker-py。
docker-py 的目标不是复制 Docker 客户端(用 Golang 编写),而是与 Docker Engine HTTP API 对话。Docker 客户端极其复杂,很难用另一种语言复制。因此,Docker 客户端中的许多功能无法在 docker-py 中使用。有时用户有时会感到沮丧,因为 docker-py 的行为与 CLI 不完全一样。
今天,我们将介绍一个由来自 Docker 社区的 Gabriel de Marmiesse 构建的新项目:Python-on-whales。这个项目的目标是在 Docker CLI 和 Python 库之间建立一对一的映射。我们通过与 Docker CLI 通信而不是直接调用 Docker Engine HTTP API 来做到这一点。

如果需要调用Docker命令行,使用Python-on-whales。而如果需要直接调用Docker引擎,使用docker-py。
在这篇文章中,我们将了解一些在 docker-py 中不可用但在 Python-on-whales 中可用的功能:
1.使用 Docker buildx 构建
2.使用 docker stack 部署到 Swarm
3.使用 Compose 部署到本地引擎
首先下载 Python-on-whales
pip install python-on-whales
Docker Build
这里我们构建一个 Docker 镜像。Python-on-whales 默认使用 buildx 并实时为您提供输出。

使用 docker stack 部署到 Swarm
在这里,我们在本地 Swarm 上部署了一个简单的Swarmpit堆栈。你得到一个 Stack 对象,它有几个方法:remove(), services(), ps().

使用 Compose 部署到本地引擎

您可能也感兴趣:
官方微博/微信

每日头条、业界资讯、热点资讯、八卦爆料,全天跟踪微博播报。各种爆料、内幕、花边、资讯一网打尽。百万互联网粉丝互动参与,TechWeb官方微博期待您的关注。

想在手机上看科技资讯和科技八卦吗?
想第一时间看独家爆料和深度报道吗?
请关注TechWeb官方微信公众帐号:
1.用手机扫左侧二维码;
2.在添加朋友里,搜索关注TechWeb。
为您推荐
消息称京东方CEO预计将在2月中旬访问佳能Tokki
脉脉开始尝试用AIGC技术解决社区中的知识类问题
苹果“先买后付”功能或将推出:正在零售员工中测试
去年全球硅晶圆出货量与销售额双双创下新高 出货超过147亿平方英寸
乘联会:2023年1月乘用车销量129.3万辆 同比下降37.9%
特斯拉1月国内销量26843辆 出口39208辆
福特将于本月中旬公布新扩张计划 以提高质量和盈利能力
印尼跃升成全球第二大钴生产国
特斯拉在德国喜获“开年红” 1月份销量同比增长超过900%
更多
- 5座中大型SUV理想L7正式上市:新增无空悬Air版本,售价31.98万元起
- 脉脉成立全新业务品牌“脉脉高聘” 提高中高端人才挖猎效率
- 理想L7 Air 售价为31.98万元 L8 Air售价为33.98万元
- 理想汽车智能驾驶总里程超过5.1亿公里 高速NOA达8789万公里
- 理想L7 CLTC综合续航里程达1315公里 城市行驶每公里仅1毛钱
- 理想L7提供三种悬架风格 匹配不同驾驶者的需求
- 易观《2023年中国数字化活动行业专题报告》:“目睹”跻身第一梯队
- 抖音电商:过去一年电商创作者内容创作量增长252%
- 华为发布“超融合+”战略及系列新品
- 脉脉开始尝试用AIGC技术解决社区中的知识类问题