docker镜像导入导出_导出docker镜像

docker镜像导入导出_导出docker镜像简介当服务器无法访问公网的时候,又要pull镜像,这个时候可以将其他服务上的镜像导出,然后再导入到要用的服务器。方法一:1.保存save-加载load格式:dockersaveIMAGE(镜像)使用dockerimages查看本机已有的镜像(也可以使用dockercommit命令把一个正在运行的容器保存为镜像),如:导出:格式:dockersaveimagesID>/存放位置/打包文件名.tardockersave42cdba9f1b08

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

简介

当服务器无法访问公网的时候,又要pull镜像,这个时候可以将其他服务上的镜像导出,然后再导入到要用的服务器。

方法一:

1.保存save - 加载 load

格式:docker save IMAGE(镜像)

使用 docker images 查看本机已有的镜像(也可以使用 docker commit 命令把一个正在运行的容器保存为镜像),如:

在这里插入图片描述
导出:

格式:docker save imagesID > /存放位置/打包文件名.tar

docker save 42cdba9f1b08 > /root/mysql-5.7.31.tar

导入:

格式:docker load < 打包文件名.tar

docker load  < mysql-5.7.31.tar

问题:
docker load -i 导入后 ,没有提示成功,也没有报错,docker images 看不到导入的镜像?
如上,我的镜像是有名称和tag的

解释:
这是因为导出镜像save的时候用的是 IMAGE ID ,没有使用镜像名称,所以不会显示出来

使用如下方式:

1.导出的时候填写镜像的名字

docker save mysql > /root/mysql-5.7.31.tar

2.导入镜像后重新打标签

先找到刚刚导入的镜像,要知道imagesID

docker images | grep 42cdba9f1b08

docker tag 42cdba9f1b08 mysql:5.7.31

在这里插入图片描述
docker tag 42cdba9f1b08 mysql:5.7.31
在这里插入图片描述

方法二:

1. 导出 export - 导入 import

格式:docker export CONTAINER(容器)

导出:

格式:docker export 容器名 > /位置/打包名.tar

docker export mysql > /root/mysql-5.7.31.tar

导入:

格式:docker import < 打包名.tar

docker import < mysql-5.7.31.tar

导出 export 与 保存 save 的区别

(1).export导出的镜像文件大小 小于 save保存的镜像

(2).export 导出(import导入)是根据容器拿到的镜像,再导入时会丢失镜像所有的历史,所以无法进行回滚操作(docker tag );而save保存(load加载)的镜像,没有丢失镜像的历史,可以回滚到之前的层(layer)。(查看方式:docker images –tree)

注:导入加载进来觉得不合适可以使用 docker rm 容器ID 、 docker rmi 镜像ID 来删掉。

移除所有的容器和镜像(大扫除):

docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a) 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196894.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker 2375

    docker 2375cd/usr/lib/systemd/system/vimdocker.service#在原本的ExecStart中添加tcp://0.0.0.0:2375[Service]Type=notify#thedefaultisnottousesystemdforcgroupsbecausethedelegateissuesstil…

    2022年6月11日
    32
  • docker访问宿主机_docker容器获取宿主机ip

    docker访问宿主机_docker容器获取宿主机ip前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程我们需要让宿主机的mysql允许远程接入。需要授权,不同版本的mysql授权语句不一样,这个在之前讲过。如下是mysql8.0之前版本的授权语句:GRANTALLPRIVILEGESON*.*TO’root’@’%’IDENTIFIEDBY’root’WITHGRANTOPTION;docker安装的mysql走网桥网络,这样docker容器的mysql就能跟宿主机同一个网络

    2022年8月21日
    12
  • Docker常用命令

    Docker常用命令

    2021年8月29日
    57
  • docker里镜像用ipv6无法访问_虚拟服务器端口设置

    docker里镜像用ipv6无法访问_虚拟服务器端口设置前言我有一个朋友,他在Dev和Test服务器用Docker搭建了Redis供项目使用,然后今天Test环境的Redis端口访问不通了,在服务上可以正常连接,真是离了个大齐,让我们试试排查排查问题;正文端口检测lsof已确认在本地用telnetip6381访问不通,那就上服务上看看端口情况DevTestDev环境同时映射到Ipv6和Ipv4端口,Test环境仅映射到Ipv6,那基本上就可以断定是环境问题了容器状态dockerps既然端口映射

    2022年8月31日
    6
  • docker 权限问题 Got permission denied while trying to connect to the Docker daemon socket at 。。。「建议收藏」

    docker 权限问题 Got permission denied while trying to connect to the Docker daemon socket at 。。。「建议收藏」在用户权限下docker命令需要sudo否则出现以下问题通过将用户添加到docker用户组可以将sudo去掉,命令如下sudogroupadddocker#添加docker用户组sudogpasswd-a$USERdocker#将登陆用户加入到docker用户组中newgrpdocker#更新用户组…

    2022年5月13日
    49
  • Jenkins(2)docker容器中安装python3[通俗易懂]

    Jenkins(2)docker容器中安装python3[通俗易懂]前言使用docker安装jenkins环境,jenkins构建的workspace目录默认是在容器里面构建的,如果我们想执行python3的代码,需进容器内部安装python3的环境。进jenki

    2022年7月28日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号