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 groupby 函数 as_index详解

在官方网站中对as_index有以下介绍: as_index : boolean, default True For aggregated output, return object w...

python 地图经纬度转换、纠偏的实例代码

python 地图经纬度转换、纠偏的代码如下所示: # -*- coding: utf-8 -*- import json import urllib import math x_p...

Python3 执行系统命令并获取实时回显功能

下面先给大家介绍下Python3 执行系统命令并获取实时回显 最近在改造一些打包的逻辑,原来在 Windows 下是基于批处理制作的,由于批处理用起来不是很方便,一些实时的计算基本无法胜...

浅谈Python中列表生成式和生成器的区别

列表生成式语法: [x*x for x in range(0,10)] //列表生成式,这里是中括号 //结果 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81...

Django多数据库的实现过程详解

有些项目可能涉及到使用多个数据库的情况,方法很简单。 1.在settings中设定DATABASE 比如要使用两个数据库: DATABASES = { 'default': {...