解决:离线部署Docker容器(使用Docker现有容器生成镜像,将镜像打包成tar并发布到离线服务器中)

一、概述

本文主要讲解如何将现有的容器打包为镜像,然后该镜像打包为tar文件并在新环境中重新载入(在离线服务器中部署)。

二、现有容器生成镜像

docker提供了 commit 命令,可将容器打成镜像,其命令格式如下:

powershell 复制代码
 docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
 
Option	功能
-a	指定新镜像作者
-c	使用 Dockerfile 指令来创建镜像
-m	提交生成镜像的说明信息
-p	在 commit 时,将容器暂停|

运行 docker images 查看现有的镜像:

运行 docker ps -a 查看当前容器:

执行命令 docker commit -a "allen追梦人" -m "mysql-8.0.23 for YPT集成平台" 377881b7fdaa mysql-8.0.23-yptplatform:v1.0 将 mysql 容器打包为镜像。

使用 docker images 命令可以查看到新生产的镜像:

三、将镜像打包成tar文件

如果需要将某一服务器上的镜像传输到另一服务器上时,可以将镜像打成tar包后传输。

1.将镜像打成tar包

docker提供 save 命令,可将镜像打成tar包。

docker save -o tar包名称.tar 待打包镜像名称:待打包镜像版本

示例如:

powershell 复制代码
docker save -o mysql-8.0.23-yptplatform.tar mysql-8.0.23-yptplatform:v1.0

当前目录下可以查看到刚才打包的tar文件:

四、将镜像文件载入到其他服务器中

Docker提供 load 命令用于通过 tar 文件载入镜像。

docker load OPTIONS tar包名称.tar

将上一步打包的:mysql-8.0.23-yptplatform.tar 文件拷贝到 其他服务器中,并执行以下命令:

powershell 复制代码
docker load -i mysql-8.0.23-yptplatform.tar

可以都看到镜像已成功载入

相关推荐
土星云SaturnCloud4 小时前
边缘侧大模型部署的新利器——国科环宇GK 300I大模型一体机深度评测与架构解析
服务器·人工智能·ai·边缘计算
晚风吹长发5 小时前
Docker基础——Docker Network(网络详解)
linux·运维·网络·ubuntu·docker·容器
Cx330_FCQ5 小时前
Tmux使用
服务器·git·算法
高磊20056 小时前
LVS(Linux virual server)
linux·服务器·lvs
山峰哥7 小时前
数据库性能救星:Explain执行计划深度拆解
服务器·开发语言·数据库·sql·启发式算法
aramae9 小时前
C++ IO流完全指南:从C标准库到C++流式编程
服务器·c语言·开发语言·c++·后端
ji_shuke9 小时前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
张忠琳10 小时前
【NVIDIA】k8s-device-plugin v0.19.3 标签管理模块 (internal/lm) 深度分析之六
云原生·容器·架构·kubernetes·nvidia
小匠石钧知10 小时前
02_在多个RockyLinux10虚拟机上安装k8s集群
云原生·容器·kubernetes·k8s
M哥支付11 小时前
什么是收付一体模式?
服务器·网络·其他·微信·金融