zoukankan      html  css  js  c++  java
  • docker知识复习

    1.镜像基于内容寻址

    基于内容寻址的实现,使用了两个目录:/var/lib/docker/image和/var/lib/docker/overlay, 后面的这个根据存储驱动的名称不同,而目录名不同。
    image目录保存了image的内容(sha256)数据。overlay目录保持了image的真实数据

    2.写时复制策略 

    1.每个container都有自己的读写layer,对镜像文件的修改和删除操作都会先执行镜像文件拷贝到读写layer的操作,然后对读写layer的文件进行修改和删除
    读写层用来存放增量的文件,所以运行的容器可以commit后给其他人用
    2.容器的hosts文件,hostname文件以及resolv.conf文件,这些事具体环境的信息,原则上的确不应该被打入镜像。

    参考:https://blog.csdn.net/zhonglinzhang/article/details/88313081

    ###################################################################################

    docker镜像构建的基本原则

    1.选择体积最小的基础镜像可有效降低镜像体积。如:alpine、busybox等
    2.yum安装组件,最后可使用yum clean all镜像清理不需要的文件

        3.减少镜像的层数:

    在使用dockerfile构建镜像时,dockerfile中的每一条指令都会生成一个层,因此可以通过合并dockerfile中可合并的指令,减少最终生成镜像的层数。例如:在dockerfile中使用RUN执行shell命令是,可以用"&&"将多条命令连接起来。
     

     参考:https://blog.51cto.com/aaronsa/2132222

  • 相关阅读:
    kubernetes(八)--Helm及其它功能组件dashboard/prometheus/HPA
    kubernetes(七)--安全机制
    kubernetes(六)--集群调度
    kubernetes(五)--存储之configmap/secret/volume/PV&&PVC
    Unicode规范中的BOM 和 ISO8891-1编码
    设计模式
    vue等诸多概念记录
    Linux下nc或scp命令来实现文件传输
    日常相关的标准技术和组织
    ibatis和mybatis中的BatchExecutor
  • 原文地址:https://www.cnblogs.com/hixiaowei/p/10513767.html
Copyright © 2011-2022 走看看