網站首頁 編程語言 正文
docker保存鏡像到本地,并加載本地鏡像文件
1、查看已有的鏡像文件:
docker images
顯示效果如下所示:
2、將鏡像打包成本地文件
指令:docker save 鏡像id > 文件名.tar
docker save 172825a55619>./watch_ocr.tar# watch_ocr.tar為打包的文件
顯示效果如下所示:
3、在另一臺主機加載本地文件到鏡像
本地已有鏡像:
加載本地文件到鏡像:
指令:docker load < 文件名.tar
docker load < watch_ocr.tar # watch_ocr.tar 為文件名稱
4、鏡像重命名
執行完上述語句后,查看本地鏡像,會看到新加載的鏡像名字和標簽都是none,利用該鏡像的id對名字和標簽重新命名即可:
指令:docker tag 鏡像id 鏡像名:標簽
docker tag 172825a55619 watch_ocr:1.2
執行完畢后,查看本地鏡像:
5、創建容器
指令:
docker run -it --name watch_ocr_contain 172825a55619 /bin/bash
watch_ocr_contain :容器名稱
172825a55619 :鏡像id
補充:docker批量導出導入本地鏡像
日常工作中經常需要導出docker中的鏡像,如果鏡像數量過多時會相當麻煩,下列導出導入腳本很好的解決了該問題。
導出腳本
#!/bin/bash
# 獲取到 "image:tag" 格式的鏡像名
IMG_NAME=`docker images | grep -v TAG | awk '{print $1":"$2}'`
# echo $IMG_NAME | awk '{gsub(/ /,"\n",$0)} {print $0}'
# 如果原本鏡像名中存在 "/" 是需要去掉的
# 定義鏡像存放目錄
DIR="/data/docker/image_tar"
if [ ! -d "$DIR" ]; then
echo -e "\033[34m${DIR}\033[0m 不存在"
mkdir -p "$DIR"
echo -e "\033[34m${DIR}\033[0m 已創建"
else
echo -e "\033[34m${DIR}\033[0m 已存在"
fi
echo ""
for IMAGE in $IMG_NAME
do
echo -e "正在保存 \033[33m${IMAGE}\033[0m"
SAVE_NAME=`echo $IMAGE | awk -F: '{print $1"_"$2}' | sed 's/\//_/g'`
docker save $IMAGE -o ${DIR}/${SAVE_NAME}.tar
echo -e "已保存到 \033[34m${DIR}/\033[31m${SAVE_NAME}.tar\033[0m"
echo ""
done
導入腳本
#!/bin/bash
# 在此處填寫鏡像文件的保存目錄
IMAGE_DIR="/data/docker/image_tar"
for IMAGE in `ls $IMAGE_DIR`
do
echo -e "正在導入鏡像 \033[33m$IMAGE\033[0m"
docker load -i ${IMAGE_DIR}/${IMAGE}
echo -e "已成功導入鏡像 \033[33m$IMAGE\033[0m"
echo ""
done
總結
原文鏈接:https://blog.csdn.net/guoqingru0311/article/details/124212885
相關推薦
- 2022-10-01 Android11及以上文件讀寫權限申請詳細介紹_Android
- 2022-12-12 C#中TextBox的橫線樣式及占位提示詳解_C#教程
- 2024-07-15 RedisTemplate使用
- 2022-01-27 插入數據庫某個字段之前判斷是否重復
- 2023-10-09 對Uni-app進行原生開發
- 2022-01-17 計算屬性 computed與 watch 的區別
- 2022-11-04 react-router-dom?v6?使用詳細示例_React
- 2022-05-17 ubuntu No package ‘libzmq‘ found
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支