Python 脚本拉取 Docker 镜像问题


Posted in Python onNovember 10, 2019

好久没有介绍小工具了,今天碰到一个,简单粗糙但是有用的一个,这个工具有多简单粗糙呢?证据有二:

连 Python shebang 都没有;

简单到原创 300 字都很难凑够。

言归正传:安装工经常会遇到一个问题:没 Docker 怎么拉镜像?这个小工具就是做这个事情的。

该项目同样是个开源项目,地址为: https://github.com/NotGlop/docker-drag

这个项目使用 Python 的 Request 库,借助 API 直接从仓库中拉取镜像,并保存为 TAR 文件。

保存下来的 Tar 文件可以直接使用 docker load -i 命令进行载入。由于去掉了对 Docker/Podman/xxxx 等的依赖,在实际工作中,例如对于文件传输或者 CICD 流程来说,这个脚本都有可能发挥很有意思的作用。

用法也是相当的简单粗暴: python3 docker_pull.py [image name] ,就完成任务了。

例如:

$ python3 docker_pull.py nginx:alpine
Creating image structure in: tmp_nginx_alpine
89d9c30c1d48: Pull complete [2787134]
110ad692b782: Pull complete [5953615]
Docker image pulled: library_nginx.tar
$ ls library_nginx.tar
library_nginx.tar

或者放到镜像里:

FROM alpine:3.10.3
RUN apk add -u ca-certificates python3 \
  && pip3 install requests \
  && wget https://raw.githubusercontent.com/NotGlop/docker-drag/master/docker_pull.py

Python 脚本拉取 Docker 镜像问题 

总结

以上所述是小编给大家介绍的Python 脚本拉取 Docker 镜像问题,希望对大家有所帮助!

Python 相关文章推荐
Python中http请求方法库汇总
Jan 06 Python
python list排序的两种方法及实例讲解
Mar 20 Python
python使用pyqt写带界面工具的示例代码
Oct 23 Python
Django实现支付宝付款和微信支付的示例代码
Jul 25 Python
python实现大转盘抽奖效果
Jan 22 Python
python 实现在一张图中绘制一个小的子图方法
Jul 07 Python
python 三元运算符使用解析
Sep 16 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
Mar 19 Python
jupyter 实现notebook中显示完整的行和列
Apr 09 Python
python3.x中安装web.py步骤方法
Jun 23 Python
python 利用Pyinstaller打包Web项目
Oct 23 Python
python 多进程和协程配合使用写入数据
Oct 30 Python
Python如何优雅获取本机IP方法
Nov 10 #Python
python argparser的具体使用
Nov 10 #Python
python滑块验证码的破解实现
Nov 10 #Python
Python 中使用 PyMySQL模块操作数据库的方法
Nov 10 #Python
分享PyCharm的几个使用技巧
Nov 10 #Python
Python单元测试与测试用例简析
Nov 09 #Python
python自动化测试之异常及日志操作实例分析
Nov 09 #Python
You might like
PHP出错界面
2006/10/09 PHP
扩展你的 PHP 之入门篇
2006/12/04 PHP
详解PHP的Yii框架中扩展的安装与使用
2016/04/01 PHP
PHP+Ajax 检测网络是否正常实例详解
2016/12/16 PHP
PHP面向对象程序设计OOP继承用法入门示例
2016/12/27 PHP
php实现留言板功能
2017/03/05 PHP
PHP更安全的密码加密机制Bcrypt详解
2017/06/18 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
Yii框架布局文件的动态切换操作示例
2019/11/11 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
setTimeout和setInterval的区别你真的了解吗?
2011/03/31 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
2016/12/01 Javascript
jquery easyui dataGrid动态改变排序字段名的方法
2017/03/02 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
nodejs如何在package.json中设置多条启动命令
2020/03/16 NodeJs
Javascript前端下载后台传来的文件流代码实例
2020/08/18 Javascript
vue自定义树状结构图的实现方法
2020/10/18 Javascript
[01:11:28]DOTA2-DPC中国联赛定级赛 RNG vs Phoenix BO3第一场 1月8日
2021/03/11 DOTA
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
PyQt5每天必学之切换按钮
2020/08/20 Python
Python装饰器原理与简单用法实例分析
2018/04/29 Python
pygame编写音乐播放器的实现代码示例
2019/11/19 Python
Python文件夹批处理操作代码实例
2020/07/21 Python
Python接口自动化测试的实现
2020/08/28 Python
HTML里显示pdf、word、xls、ppt的方法示例
2020/04/14 HTML / CSS
ZINVO手表官网:男士和女士手表
2019/03/10 全球购物
元旦趣味活动方案
2014/08/22 职场文书
医院2014国庆节活动策划方案
2014/09/21 职场文书
房屋租房协议书范本
2014/12/04 职场文书
2015年市场部工作总结
2015/04/30 职场文书
2016应届毕业生实习评语
2015/12/01 职场文书
python读取pdf格式文档的实现代码
2021/04/01 Python
如何利用python实现Simhash算法
2022/06/28 Python
windows server2016安装oracle 11g的图文教程
2022/07/15 Servers