一、概述
本文主要讲解如何将现有的容器打包为镜像,然后该镜像打包为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
可以都看到镜像已成功载入