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

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

相关推荐
企鹅侠客38 分钟前
实践篇:14-构建 Node.js 应用程序镜像
docker·node.js·dockerfile
做一个AC梦1 小时前
Docker安装失败:Docker Desktop installation failed
运维·docker·容器
Shan12051 小时前
浅谈Docker Kicks in的应用
运维·docker·容器
Li&&Tao1 小时前
docker 常用命令
docker·容器·eureka
BD_Marathon2 小时前
Ubuntu:Mysql服务器
服务器·mysql·ubuntu
Jiude3 小时前
MinIO 社区版被故意阉割,Web管理功能全面移除。我来试试国产RustFS
后端·docker·架构
飞询3 小时前
Docker 安装 Elasticsearch 9
elasticsearch·docker
0wioiw04 小时前
Ubuntu基础(监控重启和查找程序)
linux·服务器·ubuntu
艾希逐月4 小时前
TCP数据的发送和接收
服务器·网络·tcp/ip
胡斌附体5 小时前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器