容器生成镜像并传输到其他服务器

容器生成镜像并传输到其他服务器

容器——》镜像——》打包——》传输——》解包为镜像

1、从容器创建一个镜像

使用到的命令:

docker commit :从容器创建一个新的镜像

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

OPTIONS说明:

  • -a :提交的镜像作者;
  • -c :使用Dockerfile指令来创建镜像;
  • -m :提交时的说明文字;
  • -p :在commit时,将容器暂停。

例1

docker commit -a "runoob.com" -m "my apache" a404c6c174a2  mymysql:v1 

例2

docker commit -m  ""   -a  ""   [CONTAINER ID]  [给新的镜像命名]
docker commit -m  ""   -a  "" aa myelasticsearch:1.0

二、打包一个镜像

docker save [OPTIONS] IMAGE [IMAGE...]
docker save -o my_ubuntu_v3.tar runoob/ubuntu:v3

三、镜像远程拷贝

使用scp传输至其他服务器:

从本地复制到远程:

[复制代码](javascript:void(0)😉

scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file 

[复制代码](javascript:void(0)😉

从远程复制到本地

scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3 
scp -r www.runoob.com:/home/root/others/ /home/space/music/

四、新服务器载入镜像

docker load [OPTIONS]

OPTIONS 说明:

  • --input , -i : 指定导入的文件,代替 STDIN
  • --quiet , -q : 精简输出信息。

如:

$ docker load --input fedora.tar

docker load 命令

语法

docker load [OPTIONS]

OPTIONS 说明:

  • --input , -i : 指定导入的文件,代替 STDIN。

  • --quiet , -q : 精简输出信息。

实例

导入镜像:

$ docker image ls

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

$ docker load < busybox.tar.gz

Loaded image: busybox:latest
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              769b9341d937        7 weeks ago         2.489 MB

$ docker load --input fedora.tar

Loaded image: fedora:rawhide

Loaded image: fedora:20

$ docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              769b9341d937        7 weeks ago         2.489 MB
fedora              rawhide             0d20aec6529d        7 weeks ago         387 MB
fedora              20                  58394af37342        7 weeks ago         385.5 MB
fedora              heisenbug           58394af37342        7 weeks ago         385.5 MB
fedora              latest              58394af37342        7 weeks ago         385.5 MB

参考博客:https://www.cnblogs.com/007sx/p/12919027.html

参考菜鸟教程:https://www.runoob.com/docker/docker-load-command.html

posted @   pythoner_wl  阅读(381)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示