把别人的镜像下载到本地后,如何导入到服务器?
1.下载后将文件传到mobaxterm中(没用mobaxterm可以无视)
2. 下载到本地的镜像:smart-highway-cuda10.2?v1.0.1.tar
最开始用:docker load -i smart-highway-cuda10.2?v1.0.1.tar
但是报错:
open /var/lib/docker/tmp/docker-import-869538780/smart-highway-cuda10.2? v1.0.1/json: no such file or directory
docker load -i smart-highway-cuda10.2?v1.0.1.tar
open /var/lib/docker/tmp/docker-import-869538780/smart-highway-cuda10.2? v1.0.1/json: no such file or directory
3. 改用如下命令:
cat smart-highway-cuda10.2?v1.0.1.tar.gz | docker import - smart-highway
sha256:73c7a1b4b9ed478be1b8f8243037d50159688269e3d183a53ea40a39df483a4 # 显示出这一行则成功
注意:
在cat smart-highway-cuda10.2?v1.0.1.tar.gz | docker import - smart-highway中
一定要是tar.gz格式,不能是tar格式!!!!
(由于我下载的是tar格式,所以把他解压,然后重新压缩打包为tar.gz,命令如下:
tar zcvf smart-highway-cuda10.2?v1.0.1.tar.gz smart-highway-cuda10.2?v1.0.1 )
smart-highway是自定义的镜像名称
4.输入docker images则会显示所有镜像:
如图,已经导入成功啦~
知识点:
镜像(images)
容器(container)
可以简单的把image理解为可执行程序,container就是运行起来的进程
docker save images_name:将一个镜像导出为文件
使用docker load命令将文件导入为一个镜像
docker export container_id:将一个容器导出为文件
使用docker import 命令将容器导入成为一个新的镜像