镜像保存

      docker images | grep registry.harbor.com:58443/xiangan/base-sa-master/gateway-zuul
      registry.harbor.com:58443/xiangan/base-sa-master/gateway-zuul latest 26185ac9d294 47 hours ago 893MB

      docker save -o gate2.tar 26185ac9d294 //导出的时候如果指定镜像的ID就没有保存原来镜像的tag
      docker save -o gate2.tar registry.harbor.com:58443/xiangan/base-sa-master/gateway-zuul:latest //保留原来镜像的tag

      gzip gate2.tar

镜像导出保留原标签

      docker save -o redis2.tar 192.168.30.113/library/redis:latest

      gzip redis2.tar

         

docker项目克隆_jar

      加载导出的镜像

         docker load -i redis2.tar.gz

         

docker项目克隆_docker_02

 镜像导出不保留原标签

          docker save -o redis3.tar 50541622f4f1

          gzip redis3.tar

          

docker项目克隆_jar_03

        加载导出的镜像

          

docker项目克隆_jar_04

       找不到刚刚加载的镜像

         

docker项目克隆_redis_05

         docker save -o redis2.tar 192.168.30.113/library/redis:latest

          

docker项目克隆_docker_06

 镜像中服务对比调试

            对比镜像中文件是否相同,如果不同的话可能会造成一些异常

            启动目标镜像并指定自己的启动命令
            docker run -it --entrypoint /bin/bash 96c01645765e
            jar -xvf gateway-zuul-prod.jar
            md5sum gateway-zuul-prod.jar

          

docker项目克隆_redis_07

          

docker项目克隆_docker_08

         

docker项目克隆_redis_09

        分别到原主机上面的命令和目标主机执行以上命令来查看服务包的代码文件是否一致

找到pod或者容器中对应的程序包

        find / -name  gateway-zuul-prod.jar

        

docker项目克隆_jar_10

       不管是pod拷贝还是容器拷贝,本质上都是主机之间的文件拷贝。因为他们都会在主机上创建一个对应的目录

       找到这个包就可以对pod或者容器中相应的包进行替换,快速方便的对镜像中的服务进行调试

作者:不懂123