zoukankan      html  css  js  c++  java
  • 【Docker】:镜像文件操作

    笔者因为在工作当中需要使用Docker来将机器学习和深度学习的算法部署到云端,因此开始Docker的学习。机器学习当中常常使用Docker来进行环境的部署,而深度学习则可以采用NVdocker,都是很不错的选择。

    一.拉取镜像到本地

    一般情况下我们都在docker.hub这个网站下拉取(pull)镜像(image)到本地(local)上进行运行。这个网站相当于是docker的一个中央仓库,储存了docker当中的各种镜像文件,我们都可以从这里进行下载。打开这个网站,如下所示:

    备注:什么是镜像文件?

    回答:一种已经配置好的某种软件环境,我们下载下来就可以直接使用这种环境,而无需自己再次进行配置,众所周知,配置环境对程序员来说是一种很烦心的事情。比如mysql的环境,tomcat的环境,等等等等。

    问题2:什么是容器?

    回答:已经正在运行的镜像文件就叫做容器,没运行的镜像就还叫做镜像。

     好了,然后我们往下拉这个界面,点击see all official images,然后搜索tomcat,这里就中央仓库当中的所有镜像文件了,搜索过后的结果如下图所示:

     在这个图的右下角出现了docker在linux下安装的命令,因此我们复制它,在前面加上sudo命令利用管理员权限在linux下运行,笔者因为在海外,这里是没有墙的,因此可以快速下载,不需要国内的各种网站来下载,代码如下:

    sudo docker pull tomcat

    运行命令之后linux系统如下所示:

     然后查看当前已经下载的镜像:

    sudo docker images

    发现tomcat已经在其中了,如下所示:

     然后我们删除其中的image,“hello-world”,使用命令:

    sudo docker rmi -f bf

    rmi:表示删除的意思

    -f:强制删除,如果不能删除再加上这个参数

    bf:仔细看上图可以发现hello world 的image id 为:bf756f....,因此加上这个表示我们要删除的是哪一个image,可以简写,假设没有重复的话

    删除之后重新查看当前的images如下:

     发现果然helloworld没了。

    二.将已经拉取到本地的image,进行加载和运行

    我们可以使用以下命令对image进行导出,导出之后才可以进行加载:

    sudo docker save -o 导出的路径 镜像的ID

    我们现在来加载刚才的这个tomcat环境:

    sudo docker save -o ./tomcat f7

    删除掉刚才拉pull进来的tomcat的image,只剩下我们导出(derive)的image:

    sudo docker rmi -f f7

    将已经导出的image加载进来:

    sudo docker load -i tomcat

    现在我们肯定没有之前pull下来的image文件了,因此如果出现了相同的tomcat 的image文件说明肯定是我们导出来再加载进来的而不是之前pull下来的那个image文件,因此我们输入命令查看当前的images有哪些:

    sudo docker images

    如下图所示:

     最后发现我们的tomcat的环境的名称为None,为了后续我们方便使用,因此使用tag关键字对tomcat的none进行重新命名为tomcat,同时其tag命名为8.5,表示版本为8.5,代码如下:

    sudo docker tag f7 tomcat:8.5

    这就是有关镜像文件image的所有操作啦!

  • 相关阅读:
    python多进程(一)
    python操作memcached
    python操作redis
    SQLAlchemy总结
    SQLAlchemy-ORM
    python操作mysql二
    python操作mysql
    python正则二
    python正则
    python内置模块(三)
  • 原文地址:https://www.cnblogs.com/geeksongs/p/13699838.html
Copyright © 2011-2022 走看看