摘要:二思路我一开始想的是把镜像文件直接拷贝到测试服务器对应的目录,不过在查找相关资料发现本身就提供了导入和导出的功能,因此到这个过程到简单了,导出和导入的功能中也分了镜像与容器的概念。
一、背景
公司有一台测试服务器,网速比较慢,特别是下载一些国外站点镜像的时候,而我本机则比较快,还有梯子,所以在思考一个问题;是否能在我本地把镜像下载下来,然后复制到测试服务器中。
二、思路我一开始想的是把镜像文件直接拷贝到测试服务器对应的目录,不过在查找相关资料发现docker本身就提供了导入和导出的功能,因此到这个过程到简单了,docker导出和导入的功能中也分了镜像与容器的概念。
2.1 容器导出容器的命令:
docker export furious_bell > /home/myubuntu-export-1204.tar
导入容器的命令:
docker import - /home/myubuntu-export-1204.tar2.2 镜像
保存镜像命令:
docker save 9610cfc68e8d > /home/myubuntu-save-1204.tar
加载镜像命令:
docker import - /home/myubuntu-export-1204.tar三、实际过程
我的操作过程是使用镜像来导出导入,因为这个镜像是用于linux下的检测,而我的电脑是mac系统,因此根本无法运行这个容器;3.1 查看本地镜像这里顺带提一下导出镜像与导出容器的区别,如果是导出容器,是不会导出这个镜像之前的层信息的,也就是说无法回滚,而导出镜像他的信息更加完整,还可以通过命令 (docker images --tree) 进行查看。
docker images
输入命令后可以看到我们docker中所有的镜像列表
REPOSITORY TAG IMAGE ID CREATED SIZE grafana/grafana v1 34518891d49b 6 days ago 246MB ubuntu latest 735f80812f90 2 weeks ago 83.5MB grafana/grafana latest 3e16e05be9a3 2 weeks ago 245MB prom/mysqld-exporter latest e80442e91b90 5 weeks ago 17MB centos latest 49f7960eb7e4 2 months ago 200MB ppabc/lanmp-alpine latest c7dfcbceae73 2 months ago 144MB quay.io/prometheus/node-exporter latest 3082fb6ef716 2 months ago 22.9MB3.2 保存镜像为文件
输入下面的命令将保存镜像到文件,第三个参数为镜像ID,后面的路径为我们要保存的位置。
docker save 3082fb6ef716 > ~/dockerFile/node-exporter.tar
当docker执行完成之后,我们可以通过命令来查看是否保存成功,如下命令
cd ~/dockerFile && ls -al
可以看到,我们文件夹下一句存在导出的镜像
total 47520 drwxr-xr-x 3 song staff 102 8 10 11:00 . drwxr-xr-x+ 39 song staff 1326 8 10 11:00 .. -rw-r--r-- 1 song staff 24327680 8 10 10:24 node-exporter.tar3.3 复制文件到服务器
可以通过SCP命令复制镜像到测试服务器
scp ~/dockerFile/node-exporter.tar tangqingsong@192.168.43.22:/home/tangqingsong/
复制完成之后,在登陆服务器中进行查看是否成功,命令
ls -al node-exporter.tar
如果能看到以下文件信息,则代表复制成功
-rw-r--r-- 1 tangqingsong tangqingsong 24327680 8月 10 10:24 node-exporter.tar3.4 服务器导入镜像
docker导入镜像命令
docker load < /home/tangqingsong/node-exporter.tar
导入镜像过程中的输出信息
ad68498f8d86: Loading layer [==================================================>] 4.628MB/4.628MB ad8512dce2a7: Loading layer [==================================================>] 2.781MB/2.781MB cc1adb06ef21: Loading layer [==================================================>] 16.9MB/16.9MB Loaded image ID: sha256:3082fb6ef716808294633b41e3ab10f182505c4d1d70c758a443ba75fb2ef8f13.5 查看导入结果
查看docker的镜像列表
docker images
从镜像列表中可以看到我刚才导入的文件已经存在了镜像列表中
REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu 18.04 113a43faa138 2 months ago 81.2MB quay.io/calico/node v3.1.0 ad8d84fa5f8c 4 months ago 277MB
作者:汤青松
微信:songboy8888
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/27412.html
摘要:由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。镜像实际是由多层文件系统联合组成。容器可以被创建启动停止删除暂停等。容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。 Docker简介 Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS ...
摘要:由于支持在镜像的基础上进行定制,使得扩展变得更简单。而官方也维护了一大批高质量的镜像,大大降低了镜像的制作成本基本概念仓库提供了仓库用于存放制作好的镜像,方便使用者获取,在本地可通知配置多个。 Docker 是使用 GoLang 开发的开源容器引擎,可以方便的打包开发好的应用,然后分发到任意 linux 主机上。 与传统的虚拟机相比拥有以下优势: 高效的系统资源利用率由于不需要进行硬...
摘要:镜像加速国内有非常多的镜像仓库,本文介绍使用阿里云的,后文我们也会介绍把自己的镜像上传到阿里云,并且该服务是免费的。访问这个地址如果没有阿里云账号的就自己注册一个。最好还是用国内的速度比较快,这里介绍阿里云的。 showImg(https://xings.oss-cn-shanghai.aliyuncs.com/image/docker/dockers.png); Docker 的前世...
摘要:和区别让用户可以进入查看输出等等操作,但是并不会另外启动一个进程如果你用来退出,同时这个信号会默认情况会启动另外一个进程来进入,这里的操作是在这个进程下的。 走在通往docker的大道上——docker基础知识汇总 最后编辑时间:2017年03月09日 1.Docker是什么 Docker是一种新的容器化技术,为应用开发和部署提供一站式容器解决方案,能帮助开发者高效快速的构建应用,实...
摘要:参照官网安装的时候,需要安装等包,但官网给的源是,国内访问不了,此时我们可以使用阿里云的仓库镜像。阿里云上没有附说明连接,简单摸索了下,如下设置可用。 Docker install Docker 参照官网 install kubernetes 安装kubernetes的时候,需要安装kubelet, kubeadm等包,但k8s官网给的yum源是packages.cloud.googl...
阅读 2499·2021-09-30 10:00
阅读 3463·2021-09-22 10:54
阅读 6092·2021-09-07 10:28
阅读 2883·2019-08-29 13:53
阅读 713·2019-08-29 12:42
阅读 932·2019-08-26 13:51
阅读 1223·2019-08-26 13:32
阅读 2987·2019-08-26 10:39