現在還有人用docker嗎
要將帶標簽的 Docker 鏡像打包為 tar 文件,請使用 docker save
命令。以下是詳細操作指南:
一、單鏡像打包(推薦方式)
# 基礎格式
docker save -o [輸出文件名].tar [鏡像名]:[標簽]# 示例:將 my-app:1.0 保存為 app-backup.tar
docker save -o app-backup.tar my-app:1.0
二、多鏡像打包
# 同時打包多個鏡像到單個文件
docker save -o all-images.tar \my-app:1.0 \redis:alpine \nginx:latest
三、壓縮打包(節省空間)
# 直接生成gzip壓縮包(.tar.gz)
docker save my-app:1.0 | gzip > app-backup.tar.gz# 加載時解壓
gunzip -c app-backup.tar.gz | docker load
四、操作驗證
# 查看tar文件內容
tar -tvf app-backup.tar | head -n 5# 加載鏡像到新環境
docker load -i app-backup.tar# 驗證加載結果
docker images | grep my-app
五、使用場景與技巧
-
版本歸檔
# 結合日期/版本號命名 docker save -o my-app-$(date +%Y%m%d)-v1.0.tar my-app:1.0
-
CI/CD 流水線
# 在構建后自動打包 docker build -t my-app:$CI_COMMIT_SHA . docker save -o my-app-$CI_COMMIT_SHA.tar my-app:$CI_COMMIT_SHA
-
跨平臺傳輸
# 壓縮后傳輸(約減少70%體積) docker save my-app:prod | gzip | ssh user@server "gunzip | docker load"
-
批量導出所有鏡像
# 導出全部鏡像(慎用,可能體積巨大) docker save $(docker images -q) -o all-images.tar