day05-20200717
 
p21.docker容器数据卷容器
 
就是活动硬盘上面挂载硬盘进行数据的传递。
 
 
【docker run -it --name dc01 fyr/centos】
【echo '123'>aa.txt】
【docker run -it --name dc02 --volumes-from dc01 fyr/centos】
【echo '123'>bb.txt】
【docker run -it --name dc03 --volumes-from dc01 fyr/centos】
【echo '123'>cc.txt】
 
dc02继承dc01,dc03继承dc01。
最后查看三个容器,发现数据实现了共享。
 
 
现在删除了dc01,dc02和dc03还可以实现数据共享吗?
 
可以的。
 
p22.dockerfile解析
 
dockerfile 是docker镜像得构建文件,是由一系列命令和参数构成的脚本。
 
构建三步骤:
第一步手动编写dockerfile
第二步文件编写好以后docker build 获得一个自定义得镜像
第三步docker run跑起来
 
类似于
maven build
jar
java -jar 
 
p23.dockerfile构建过程解析
 
基础:
1、保留字指令必须是大些,切后面必须更上至少一个参数。
2、从上到下,顺序执行
3、#表示注释
4、每一个指令都会生成一个新的镜像层,并对镜像进行提交。
 
docker执行dockerfile的大致流程:
1、docker从基础镜像运行一个容器
2、执行一条指令并对容器做出修改
3、执行类似docker commit的操作提交一个新的镜像层
4、docker再基于刚提交的镜像运行一个新容器
5、执行dockerfile中的下一条指定直到所有的指令都执行完成。
 
从应用软件的角度来看,dockerfile、docker镜像与docker容器分别代表三个不同的阶段,
 
dockerfile是软件的原材料
docker镜像是软件的交付品
docker容器则可以认为是软件的运行态
dockerfile面向开发,docker镜像成为交付标准,docker容器则涉及部署与运维,三者缺一不可,合理充当docker体系的基石。
 
p24.dockerfile体系构建
 
【FROM】
基础镜像,新的镜像是基于哪个基础镜像的。
【MAINTAINER】
镜像维护的姓名和邮箱
【RUN】
构建镜像的过程中执行命令,shell脚本命令
【EXPOSE】
当前容器对外暴漏的端口
【WORKDIR】
指定在创建容器后,终端默认登录的进来工作目录,一个落脚点。
【EVN】
设置环境变量
【ADD】
添加文件或目录,与COPY功能相同,但是ADD强大一点儿,拷贝加上解压缩文件。
【COPY】
添加文件或目录
【VOLUME】
保存数据和数据持久化
【CMD】
指定一个容器启动时要运行的命令,写多个CMD命令,只会执行最后一个命令,前面的会被覆盖。
【ENTRYPOINT】
指定一个容器启动时要运行的命令,多个命令的话是追加,不会被覆盖。
【ONBUILD】
当构建一个被继承的dockerfile时运行命令,父镜像在被子继承后赴京向的onbuild被出发,类似于触发器。

跟着尚硅谷系统学习Docker-【day05】的更多相关文章

  1. 跟着尚硅谷系统学习Docker-【day01】

    day01-20200710   p1.基础知识   鲸鱼背上有一些集装箱   学习docker得基础知识   1.强制:熟悉Linux命令和相关背景知识 2.建议有maven和git的相关知识   ...

  2. 跟着尚硅谷系统学习Docker-【day08】

    day08-20200723   p32.docker 安装redis   [ docker pull redis] [docker run -p 6397:6397 -v /tmp/mydocker ...

  3. 跟着尚硅谷系统学习Docker-【day03】

    day03-20200715   p15.docker容器命令(下)   以守护进程的形式启动 [docker run -d 容器名]后台运行 启动了后又关闭了,与前台没有交互,立刻就kill了.前台 ...

  4. 跟着尚硅谷系统学习Docker-【day02】

    day02-20200714   p9.docker阿里云配置   helloword   拉取镜像-运行-   拉取镜像如果从国外网站拉取辉比较慢,所以需要配置阿里云或者网易云得镜像仓库.   首先 ...

  5. 跟着尚硅谷系统学习Docker-【day07】

    day07-20200722   p27.dockerfile案例编写-3   第一步:编写父dockerfile DockerFile_20200722_2 FROM centos RUN yum ...

  6. 跟着尚硅谷系统学习Docker-【day06】

    day06-20200720 p24.dockerfile案例编写-1   1.创建好容器时,进去容器的时候,修改所在的当前目录. 2.新添加命令.支持vim.ifconfig 备注:原来的镜像容器默 ...

  7. 跟着尚硅谷系统学习Docker-【day04】

    day04-20200716   p18.docker容器数据卷   docker容器中的数据,做持久化. 容器关闭以后容器内的数据就没有了. 保存到数据库或者服务器宿主机里面.   作用:容器间可以 ...

  8. 尚硅谷Docker---1、docker杂记

    尚硅谷Docker---1.docker杂记 一.总结 一句话总结: ~ php用的homestead就相当于docker,javaee一般都是用docker,php也可以用docker ~ dock ...

  9. 尚硅谷Docker---1-5、docker简介

    尚硅谷Docker---1-5.docker简介 一.总结 一句话总结: docker是环境打包:有点像windows镜像 docker的实质:缩小版.精细版.高度浓缩版的一个小型的linux系统 1 ...

随机推荐

  1. Layui+MVC+EF (项目从新创建开始)

    最近学习Layui ,就准备通过Layui来实现之前练习的项目, 先创建一个新的Web 空项目,选MVC 新建项目 创建各种类库,模块之间添加引用,并安装必要Nuget包(EF包)   模块名称 模块 ...

  2. 用Python绘制一套“会跳舞”的动态图形给你看看

    在读技术博客的过程中,我们会发现那些能够把知识.成果讲透的博主很多都会做动态图表.他们的图是怎么做的?难度大吗?这篇文章就介绍了 Python 中一种简单的动态图表制作方法. 看这优美的舞姿 很多人学 ...

  3. 关于css布局中,inline-block元素间隙的处理方法

    关于inline-block元素间隙的处理 参考橱窗外的小孩,原文链接https://www.cnblogs.com/showcase/p/10469361.html 如下,两个inline-bloc ...

  4. SpringBoot_MyBatisPlus快速入门小例子

    快速入门 创建一个表 我这里随便创建了一个air空气表 idea连接Mysql数据库 点击右侧database再点击添加数据库 找到Mysql 添加用户名,密码,数据库最后点击测试 测试成功后在右侧就 ...

  5. [vue]子组件通过props获取父组件数据以及使用watch解决动态数据不生效问题

    父子组件的传值,在Vue官方也写得很清楚,父组件中使用v-bind绑定传送,子组件使用props接收. 父组件通过v-bind绑定数据: <template> <router-vie ...

  6. PyCharm 2020.1专业版安装教程及破解方法

    一.安装第一步下载 版本一定得是:2020.1 其他版本下载地址:https://www.jetbrains.com/pycharm/download/other.html  安装不多说了: 二.破解 ...

  7. Webpack 定义process.env的时机

    定义 process.env的时机 如果已经提取了公共配置文件 webpack.common.js 分别定义了开发配置webpack.dev.js和生产配置webpack.prod.js 在webpa ...

  8. Homekit_DoHome_智能通断器

    本款通断器适用于IOS和android系统用户,苹果用户可以非常方便的使用siri进行有效控制,android用户需要下载Dohome App进行操作,同时支持市面上主流的智能音箱进行控制. 对于an ...

  9. Remix+Geth 实现智能合约部署和调用详解

    Remix编写智能合约 编写代码 在线调试 实现部署 调用接口 Geth实现私有链部署合约和调用接口 部署合约 调用合约 获得合约实例 通过实例调用合约接口 Remix编写智能合约 编写代码 Remi ...

  10. 浅谈python深复制与浅复制区别

    话不多说,看代码