首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >docker | 脚本方式批量导出&导入镜像

docker | 脚本方式批量导出&导入镜像

作者头像
Amadeus
发布2022-10-25 17:12:24
发布2022-10-25 17:12:24
2.1K0
举报
文章被收录于专栏:linux技术linux技术

python方式#

批量导出,运行后所有tar包都在当前目录下

代码语言:javascript
复制
# encoding: utf-8

import re
import os
import subprocess

if __name__ == "__main__":
    p = subprocess.Popen('docker images', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    for line in p.stdout.readlines():

        # 此处的正则表达式是为了匹配镜像名以kolla为开头的镜像
        # 实际使用中根据需要自行调整
        m = re.match(r'(^kolla[^\s]*\s*)\s([^\s]*\s)', line)

        if not m:
            continue

        # 镜像名
        iname = m.group(1).strip()
        # tag
        itag = m.group(2).strip()
        # tar包的名字
        if iname.find('/'):
            tarname = iname.split('/')[0] + '_' + iname.split('/')[-1]  + '_' + itag + '.tar'
        else:
            tarname = iname + '_' + itag + '.tar'
        print tarname
        ifull = iname + ':' + itag
        #save
        cmd = 'docker save -o ' + tarname + ' ' + ifull
        print os.system(cmd)

    retval = p.wait()

批量导入,同理导入当前目录下的所有的tar包

代码语言:javascript
复制
import  os

images = os.listdir(os.getcwd())
for imagename in images:
    if imagename.endswith('.tar'):
        print(imagename)
        os.system('docker load -i %s'%imagename)

bash方式#

导出#

代码语言:javascript
复制
#!/bin/bash
docker images > images.txt
awk '{print $1}' images.txt > images_cut.txt
sed -i '1d' images_cut.txt
while read LINE
do
docker save $LINE > ${LINE//\//_}.train.tar
echo ok
done < images_cut.txt
echo finish

导入#

代码语言:javascript
复制
#!/bin/bash
while read LINE
do
docker  load -i $LINE
echo ok
done < tarname.txt
echo finish

参考#

https://www.cnblogs.com/ksir16/p/8865525.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • python方式#
  • bash方式#
    • 导出#
    • 导入#
  • 参考#
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档