有时候会出现不允许服务器联网的情况,这时候就可以从别的服务器导出所有的服务镜像,把导出的镜像文件上传到正在使用的服务器,下载镜像,之后在执行服务的启动脚本即可
压缩导出单个镜像:
docker container commit < 输入你的 CONTAINER_ID > <需要构建的镜像名:版本号>
docker save -o 名称.tar 镜像名称:镜像标签(此处需要用镜像名称和标签,不能直接id)
别的服务器使用下述命令下载镜像
docker load -i 名称.tar
压缩导出 多个(比如所有中间件) 镜像命令:
docker save $(docker ps -f status=running -f "name=minio" -f "name=eureka" -f "name=elasticsearch" -f "name=redis" -f "name=mysql" -f "name=influxdb" -f "name=rabbitmq" -f "name=tdengine" | sed '1d' | awk '{print $2}' && echo minio/mc:latest) -o middleware.tar && gzip middleware.tar
解压缩导入 多个 镜像命令:
gzip -d middleware.tar.gz && docker load -i middleware.tar
压缩导出 所有 镜像命令
docker save $(docker ps -f status=running | sed '1d' | awk '{print $2}' && echo minio/mc:latest) -o all.tar && gzip all.tar
解压缩导入 所有 镜像命令
gzip -d all.tar.gz && docker load -i all.tar