解决:离线部署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

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

相关推荐
Chenyu_3104 小时前
DPDK、TC 和 XDP:Linux 高性能网络到底在优化什么
linux·服务器·网络·缓存
乔旭伟6 小时前
Linux 服务器备份实战:一致性快照、日志归档与恢复演练
linux·运维·服务器
乔旭伟6 小时前
Linux 服务器安全加固实战:SSH、防火墙、补丁与入侵排查
linux·服务器·安全
裕晟资质规划7 小时前
三类涉密资质延续时限差异分析:军工60日与集成印制3个月的边界
java·服务器·前端·网络·安全
刘胡子大叔7 小时前
备份包只有 1.5K?
linux·服务器·网络
无足鸟ICT7 小时前
【RHCA+】RPM包验证和数字证书
linux·运维·服务器
我不会起名字3227 小时前
Redis 从 0 到 1(九):主库宕机 30 秒自动切主——1 主 2 从 3 哨兵 + Go 客户端
redis·docker·sentinel·高可用·哨兵
小范的技术工坊8 小时前
Linux应用开发(文件属性)
linux·运维·服务器
开开心心就好9 小时前
多份文档怎么批量打印?支持多种格式
java·服务器·开发语言·pdf·ocr·散列表·启发式算法
姜鱼问生9 小时前
每次开机手动检查 6 样东西?我写了个 2 秒自检脚本
运维·网络·nginx·docker·容器