docker的存储和DockerFile

1、docker存储:

docker存储驱动与联合文件系统:联合文件系统是一种为linux,FreeBSD和NetBSD操作系统设计的,将其他文件系统合并到一个联合挂载点的文件系统

联合文件系统实际上是由存储驱动实现的,相应的存储驱动有aufs、overlay、overlay2、btrfs、zfs、vfs、等

2、选择docker存储驱动的总体原则:

在最常用的场合使用具有有最佳整体性能和稳定性的存储驱动。
如果内核支持多个存储驱动,则docker会提供要使用的存储驱动的优先级列表。
优先使用linux发行版默认的存储驱动。
一些存储驱动要求使用特定格式的底层文件系统,这可能会限制选择。
选择存储驱动还要取决于工作负载的特性和所需的稳定性级别

3、主流的docker存储驱动:

对于当前支持的linux发行版,overlay2存储驱动是首选,centos和RHEL的最新版本现在已经支持overlay2存储驱动,并将overlay2作为推荐的存储驱动

4、docker版本所支持的存储驱动:

对于Docker引擎企业版和Docker EE来说,支持存储驱动的决定性资源是产品兼容性矩阵。建议用户迁移到overlay2存储驱动

对于Docker CE来说,只有部分配置被测试过,并且操作系统的内核不可能支持每个存储驱动, 最佳配置是使用带有支持overlay2存储驱动的内核的现代Linux发行版,并且对于大量的工作负载要使用Docker卷写入,而不是将数据写入容器的可写层

5、docker镜像基于dockerfile的创建

dockerfile是由一组指令组成的文件,每行支持一条指令,每条指令可携带多个参数,一条指令可以用&&方式,去写多条指令,支持以“#”为开头的注释

什么是构建上下文:上下文是由路径(本地文件系统上的目录)或一个URL(git仓库的位置)定义的一组文件。构建上下文以递归的方式处理,本地路径包括其中的任何子目录。URL包括仓库及其子模块。使用当前目录作为上下文的简单构建命令  docker build.

镜像构建过程:

构建过程中一开始将整个上下文递归地发送给守护进程。
docker守护进程逐一运行docker中地指令,每条指令被独立执行并创建一个新镜像。
只要可能,docker将重用过程中的中间镜像(缓存),以加速构建过程。

在编写Dockerfile时,有严格的格式需要遵循:

  • 第一行必须使用FROM指令指明所基于的镜像名称;

  • 之后使用MAINTAINER指令说明维护该镜像的用户信息;

  • 然后是镜像操作相关指令,如RUN指令。每运行一条指令,都会给基础镜像添加新的一 层。

  • 最后使用CMD指令指定启动容器时要运行的命令操作。

创建nginx镜像实验:

先创建目录

然后编辑dockerfile和index.html

docker build -t mynginx:v1 .  基于dockerfile构建镜像

-f:指定dockerfile文件,不写默认指定当前目录

-t:指定将镜像名称

.:指定当前目录环境中的文件

然后基于该镜像启动容器进行端口测试

 浏览器访问192.168.66.134:32768

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值