• Docker镜像服务(二)


    一、Docker镜像介绍

     镜像是Docker的三大核心概念之一。

    Docker运行容器前需要本地存在对应的镜像,如果镜像不存在本地,Docker会尝试先从默认的镜像仓库下载(默认使用Docker Hub公共注册服务中的仓库),我们也可以通过配置,使用自定义的镜像仓库。

    二、获取最新的Ubuntu镜像

    从Docker Hub的Ubuntu仓库下载一个最新的Ubuntu操作系统镜像,并下载一个centos7.2的系统镜像

    # docker pull ubuntu

    # docker pull centos:7.2.1511

    从下载过程中可以看到分层存储的概念,镜像是由多层存储所构成。下载也是一层层的去下载,并非单一文件。下载过程中给出了每一层的 ID 的前 12 位。并且下载结束后,给出该镜像完整的 sha256 的摘要,以确保下载一致性。

    三、查看本地镜像信息

    # docker images
    # 来自于哪个仓库   镜像标签信息      镜像的ID(唯一)    创建时间        镜像大小 REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest
    775349758637 2 weeks ago 64.2MB centos 7.2.1511 9aec5c5fe4ba 8 months ago 195MB centos latest 1e1148e4cc2c 11 months ago 202MB

     使用docker tag为本地镜像添加新的标签, 这两个镜像的ID是一样的,只是名字不同而已。标签起到的快捷方式的作用。

    # docker tag centos:7.2.1511 centos:7.2
    # docker images
    REPOSITORY TAG          IMAGE ID       CREATED        SIZE  centos
    7.2 9aec5c5fe4ba 8 months ago 195MB centos 7.2.1511 9aec5c5fe4ba 8 months ago 195MB

    四、搜索镜像

    --stars=0 默认的输出结果将按照星级评价进行排序,还可看到是否官方镜像,是否自动允许用户验证镜像的来源和内容。

    # docker search mysql 

     五、删除镜像

    # docker rmi ubuntu:latest
    
    # 或者复制镜像的ID全部删除
    # docker rmi -f 9aec5c5fe4ba

     六、创建镜像

    创建镜像有三种方法:基于已有镜像的容器创建、基于本地模板导入、基于Dockerfile创建。

    本次主要是基于已有的镜像容器创建

    6.1 首先启动一个镜像,并在其中进行修改,并退出

    [root@192-168-5-91 ~]# docker run -it centos /bin/bash
    [root@f2306f13f765 /]# yum install net-tools -y
    [root@f2306f13f765 /]# exit

    6.2使用docker commit创建容器

    # docker ps -a
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                          PORTS               NAMES
    f2306f13f765        centos              "/bin/bash"         3 minutes ago       Exited (0) About a minute ago                       gracious_shockley
    
    # docker commit -m 'install net-tools' -a 'lzfn' f2306f13f765 centos_test         # -m 提交消息,-a 作者信息
    sha256:c753a863c07a4901ed72ff39110971538a40dfc66824dffad5e0060d5994b555
    
    # docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    centos_test         latest              c753a863c07a        24 seconds ago      291MB

    七、镜像的导入与导出

    7.1 将镜像导出到本地文件

    # docker save -o centos7.2.tar centos:7.2.1511
    
    # docker save centos:7.2.1511 > centos7.2.tar

    7.2 将本地镜像导入到docker仓库

    # docker load --input centos7.2.tar
    
    # docker load < centos7.2.tar
  • 相关阅读:
    Mac环境下svn的使用
    开发中常见问题集锦
    【C语言】07基本语句和运算
    【C语言】05printf和scanf函数
    【C语言】03第一个C程序代码分析
    【C语言】06基本数据类型
    【C语言】04函数
    【C语言】01C语言概述
    让UIWebView弹出键盘上的按钮显示中文
    【C语言】02第一个C程序
  • 原文地址:https://www.cnblogs.com/cyleon/p/11866437.html
Copyright © 2020-2023  润新知