美文网首页
Docker之镜像操作

Docker之镜像操作

作者: 747大雄 | 来源:发表于2019-07-15 16:01 被阅读0次

    Docker之镜像操作

    1. 获取镜像

      未指定仓库路径时,默认从docker hub上面下载镜像,如果未指定标签版本,默认下载最新版并且跟随最新版变换而变化,生成环境一定要指定标签版本。

      • 用法:docker pull [仓库路径][镜像名][标签]

      • 示例:docker pull daocloud.io/library/mysql:latest

      • 主要参数:

        • --disable-content-trust 取消镜像的内容校验,默认为真
    2. 查看镜像信息

      • 列出所有镜像 docker images
      • 主要参数:
        • --all=true|false 列出所有镜像文件(包括临时文件),默认为否
        • --filter=[],根据规则过滤列出的镜像
        • --no-trunc=true|false 对输出结果太长的字段是否截断,默认是
    3. 使用tag命令添加镜像新标签名

      为了方便后续使用特定镜像,可以为镜像添加新的标签名,他们只是标签名不一样,实际的镜像id还是一样的。

      • 示例:docker tag centos:7.0.4 mycentos:7.0.4
    4. 使用inspect命令查看详细信息

      查看进项详细信息,包括作者,适应架构,各层的数字摘要

      • 示例:docker inspect mysql:5.0.4

      它返回的是个JSON数据格式,可以查看指定字段

      • 示例:docker inspect -f {{".Architecture"}} mysql:5.0.4
    5. 使用history查看镜像各层信息

      示例:docker history mysql:5.0.4

    6. 搜索镜像

      search命令可以搜索Docker Hub上面的镜像

      • 重要参数:

        • --filter filter 过滤输出内容
        • limit int 限制条数
      • 示例:

        • 搜索官方提供的带Nginx关键字的镜像

          docker search --filter=is-official=true nginx

        • 搜索所有收藏数超过 4 的关键词包括 tensorflow 的镜像

          docker search --filter=stars=4 tensorflow

    7. 删除清理镜像

      1. 使用标签删除镜像

        docker rmi [params] params可以是标签或ID

        重要参数:

        • -f :强行删除容器,即使有容器依赖它
        • -no-prune:不要清理未带标签的父镜像

        示例:docker rmi mysql:5.0.4

      2. 使用镜像ID删除镜像

        当使用ID来删除镜像时,会先删除所有指向该ID的标签,再删除镜像文件本身,如果有该镜像存在正在运行的容器时,镜像文件默认不能删除。但可以使用-f强行删除

        示例:docker rmi Bflbd2lbd25c

      3. 使用docker一段时间后,系统可能会遗留一些临时镜像文件,使用使用docker image prune命令来清理

        重要参数:

        • -a :删除所有无用镜像,不光是临时镜像
        • -filter filter:只删除符合给定过滤器的镜像
        • -f:强行删除镜像,而不进行确认
    8. 创建镜像

      1. 基于已有容器创建

        就是在已存在的镜像中做些修改,然后保存为新的镜像,可以使用ID或名称来指定容器

        示例:docker [con七ainer] commi七-m "Added a new file" -a "Docker Newbee" a925cb40b3f0
        test:0.1

      2. 基于本地模板导入

      3. 基于DockerFile创建

    9. 导出和载入镜像

      1. 导出镜像为本地文件

        docker save -o ubuntu_18.04.tar ubuntu:18.0.4

      2. 将tar文件再导入镜像库

        docker load -i ubuntu_18.04.tar

    10. 上传镜像库

      直接docker push会将镜像推送到Docker Hub公共仓库里面,我们也可以搭建私有仓库,具体参考:docker 从公共仓库拉取,并上传到私有仓库 - casion - CSDN博客,将镜像推送到私有仓库中。在没网的情况下,我们可以使用save,和load来传递镜像文件。

    相关文章

      网友评论

          本文标题:Docker之镜像操作

          本文链接:https://www.haomeiwen.com/subject/hwwnkctx.html