博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker-理解镜像构成
阅读量:5752 次
发布时间:2019-06-18

本文共 1074 字,大约阅读时间需要 3 分钟。

  1. 我们之前就了解到了,docker的镜像并非是一个整体镜像,而是一个分层存储,每一层都是在前一层的基础上进行的修改,而容器也是这样的,是多层存储的
  2. 我们现在来启动一个镜像

    $ docker run --name webnginx -d -p 80:80 nginx
    • -p:表示将容器内的80端口映射到物理机的80端口
    • -d:后台运行
  3. 当运行起来后,我们浏览器访问 ,会看到nginx的标志

markdown_img_paste_20190308155945410

  1. 到这我们是对刚拉下来的镜像我们没有任何的修改,现在我们将对nginx的欢迎界面进行初始化
  2. docker进入容器更改nginx配置文件

    $ docker exec -it webnginx bash$ root@b5c597a4f124:/# echo '

    HELLO DOCKER

    ' > /usr/share/nginx/html/index.html$ docker restart webnginx
  3. 再次访问,会看到我们更改后的信息

markdown_img_paste_20190308160629969

  1. 到这我们就已经开始更改了容器内的/usr/share/nginx/html/index.html文件,这就会造成现在的镜像和之前的镜像的存储层已经发生了改变,docker也可以检测到这个更改
  2. docker 检测差异

    [qidai@qidai-pc ~]$ docker diff webnginxC /runA /run/nginx.pidC /usrC /usr/shareC /usr/share/nginxC /usr/share/nginx/htmlC /usr/share/nginx/html/index.htmlC /varC /var/cacheC /var/cache/nginxA /var/cache/nginx/client_tempA /var/cache/nginx/fastcgi_tempA /var/cache/nginx/proxy_tempA /var/cache/nginx/scgi_tempA /var/cache/nginx/uwsgi_tempC /rootA /root/.bash_history
  3. 上面除了cache的改变和pid文件的创建,发生更改的文件已经显而易见了
  4. 目前就是在原有刚拉取过来的镜像的基础上发生了一层改变,并形成了一个新的镜像,如果现在这个nginx的欢迎界面正是我们需要的,我们就可以将此镜像进行保存
  5. 如下是我画的一个图,相信到这我们就很直观的理解了docker是一层层的存储层的变化来构成一个dcoker镜像

markdown_img_paste_20190309103957931

  1. 对于docker镜像的保存,下面说

转载地址:http://acukx.baihongyu.com/

你可能感兴趣的文章
与MS Project相关的两个项目
查看>>
[转载]ASP.NET MVC Music Store教程(1):概述和新项目
查看>>
使用 SharpSvn 执行 svn 操作的Demo
查看>>
js函数大全
查看>>
刷题笔记
查看>>
iOS app exception的解决方案
查看>>
Mongodb启动命令mongod参数说明
查看>>
TCP&UDP压力测试工具
查看>>
oracle 导入数据
查看>>
首个5G智慧机场落地广州 速度是4G的50倍
查看>>
Android 最简单的自定义Dialog之一
查看>>
磨刀不误砍柴 - 配置适合工作学习的桌面环境
查看>>
自己动手写docker-3
查看>>
Java笔记-反射机制(一)
查看>>
redux v3.7.2源码解读与学习之 applyMiddleware
查看>>
【React】为什么我不再使用setState?
查看>>
Git原理与高级使用(3)
查看>>
从JDK源码看Writer
查看>>
Express 结合 Webpack 实现HMRwi
查看>>
SQL模糊查询通配符_和%处理
查看>>