docker镜像打包save,载入load,启动run

docker打包,针对的是镜像,而不是运行中的容器。

查看当前系统的镜像文件:

docker images

首先,将当前运行中的,已经自定义修改之后的容器保存为新的镜像。

docker commit ce11ed87f21f web_servers:2.0

 例如镜像名叫:web_servers

执行打包命令:将镜像web_servers 通过save打包命令,以为.tar格式保存在路径/home下。

docker save web_servers:2.0  -o  /home/web_servers.tar 

打包命令执行完成之后,如果打包的镜像文件占用空间比较大,可以用操作系统的tar -zcvf打包压缩命令,将该镜像包再进行一次压缩。

OK,致此,容器打包完成。

***************

这样就可以将该打包的容器,传输到其他服务器,直接运行启动。

例如,将该镜像文件传输到另一台服务器上,前提是目标服务器上已安装docker环境;

docker load < db.tar

docker load < web_servers.tar

用docker images 命令查看镜像是否导入成功。

首先启动运行数据库容器:

docker run -d -p 5432:5432 -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=实际密码****** -e POSTGRES_DB=alsv --name alsv_db db:10.6

启动运行web_servers.tar应用容器:(注意端口映射,如果需要共享操作系统本地路径,注意容器卷映射)

方式一:

共享系统存储路径:docker run -it -d --name web_servers -p 8088:8088 web_servers:2.0

方式二:

指定存储路径:(将系统的/home/test/映射到容器内部的/mnt/ )

docker run -it --name web_servers -v /home/test/:/mnt/ -p 8088:8088  web_servers:2.0 /bin/bash

没有异常的话,查看运行状态:

docker ps

 

posted @   hello-Jesson  阅读(9906)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示