Python 脚本拉取 Docker 镜像问题

yipeiwu_com6年前Python基础

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

连 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 获取主机ip与hostname的方法

->基础环境 Linux:ubuntu 16.04 Python ; 2.7 ->修改hostname 1:$sudo hostname 2tong-slavetwo 2:$...

对python中Json与object转化的方法详解

对python中Json与object转化的方法详解

python提供了json包来进行json处理,json与python中数据类型对应关系如下: 一个python object无法直接与json转化,只能先将对象转化成dictiona...

Python发送form-data请求及拼接form-data内容的方法

 网上关于使用python 的发送multipart/form-data的方法,多半是采用 ulrlib2 的模拟post方法,如下: import urllib2 bo...

利用Python生成文件md5校验值函数的方法

前言 在linux有个命令叫做md5sum,能生成文件的md5值,一般情况下都会将结果记录到一个文件中用于校验使用,比如会这样使用: [crazyant@localhost Pyth...

Python读取指定日期邮件的实例

背景:9月份有部分数据缺失,这部分数据在邮箱里,需要重新拉取,但是每天几百封邮件,总共有6、7万封邮件,使用stat()和retr(which)结合遍历很 耗时 基于如上背景,初始大致思...