栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

docker批量导入tar、gz格式镜像包并启动

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker批量导入tar、gz格式镜像包并启动

因为最近需要搭建环境,就需要导入docker镜像,但是人都是喜欢偷懒的,所以写了这个脚本,对镜像进行批量导入启动。

1.将需要导入的镜像和本脚本放在同一目录下再使用命令 sh <脚本名>.sh或./<脚本名>.sh启动脚本即可

#!/bin/bash

#启动docker
sudo service docker start

#导入镜像文件
for img in `find ./ -name '*.tar' && find ./ -name '*.gz' `
#for img in `ls *.tar.gz && ls *.tar`
do
	sudo docker load -i $img
done

#启动docker仓库(这里是全部启动,可以注释掉前面两行手动写,但是这样有点违背自动的初衷,哈哈哈!)
containerNames=$(sudo docker images --format "{{.Repository}}")

Names=$(echo $containerNames | sed ':a;N;$!ba;s/n/|/g')
#Names="name1 name2 name3 ----"
for Name in $Names

do
        sudo docker run -d -P $Name

done

echo " n " 

#输出启动的docker的名称和端口信息,可以根据需求添加别的显示
sudo docker ps --format "{{.Image}}: {{.Ports}}" | awk -F, '{print $1}'

#获取输出ip地址(仅仅适用单网卡)
ip=$(ip a |grep inet|grep -v inet6 |grep -v 127.* |awk '{print $2}'|grep -v 172.17.0.1)

echo " nip:" ${ip%/*}

(脚本和文件处于同一目录,执行)

(输出效果)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/642054.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号