码头工人中的镜像管理,端口映射和容器互联介绍

  

这篇文章为大家带来有关码头工人中的镜像管理,端口映射和容器互联的介绍。大部分知识点都是大家经常用到的,为此分享给大家做个参考。一起跟随小编过来看看吧。

码头工人镜像的分层

Dockerfile中的每个指令都会创建一个新的镜像层;
镜像层将会被缓存和复用;
当Dockerfile的指令修改了,复制的文件变化了,或者构建镜像时指定的变量不同了,对应的镜像层缓存就会失效;
某一层的镜像缓存失效之后,它之后的镜像层缓存都会失效;
镜像层是不变的,如果在某一层中添加一个文件,然后在下一层中删除它,则镜像中依然包含该文件

码头工人镜像

 <代码>是应用发布的标准格式
  可支撑一个码头工人容器的运行 

码头工人镜像的创建方法

 <代码>基于已有镜像创建
  基于本地模板创建
  基于dockerfile创建 

基于已有镜像创建

将容器里面运行的程序及运行环境打包生成新的镜像

 <代码>码头工人承诺(选项]容器ID/名称仓库名称:[标签)
  m:说明信息
  ——:作者信息
  p:生成过程中停止容器的运行 

基于本地模板创建

 <代码>通过导入操作系统模板文件生成新的镜像
  使用wget命令导入为本地镜像
  导入成功后可查看本地镜像信息 

基于Dockerfile创建

Dockerfile是由一组指令组成的文件

Dockerfile结构的四部分:

 <代码>基础镜像信息;
  维护者信息;
  镜像操作指令;
  容器启动时执行指令, 

使用Dockerfile创建镜像并在容器中运行

Dockerfile操作指令

码头工人中的镜像管理,端口映射和容器互联介绍

1,基于已有镜像创建

 <代码> [root@localhost ~] #码头工人拉centos,# #下载镜像
  (root@localhost ~) #码头工人创造- centos/bin/bash # #基于centos镜像创建容器
  30 d395e63fc32b9dcf96029869f40a8002990f689410cca2660af4056ed2614f
  (root@localhost ~) #码头工人ps - a, # #查看容器信息
  容器标识,,形象命令,,创建,,状态,,港口的大敌;,,,,,,的名字
  30 d395e63fc3,,,centos大敌;,,,,,,“/bin/bash",,,,7秒前,,,创建,,,,,,,,,,,,,,,,inspiring_germain
  (root@localhost ~) #码头工人commit - m“new"——“daoke"30 d395e63fc3 daoke: centos
  # #将容器里面运行的程序及运行环境打包生成新的镜像
  sha256:66d76f9225b94ce6156db953bd16c384f74067f981d45bee99340f3a965506d3
  (root@localhost ~) #码头工人图像,# #查看镜像
  库,,,,,标签,,,,,,,形象标识,,,,,创建的大敌;,,,,,大小
  daoke,,,,,,,centos,,,,,,66年d76f9225b9大敌;,,,10秒前,,220 mb
  centos,,,,,,最新的大敌;,,,,,0 f3e07c0138f大敌;,,,3个月前,,,220 mb  

2,基于本地模板创建

 <代码> root@localhost ~ #山。cifs//192.168.100.3/LNMP-C7/mnt/, # #将本地模板挂载到Linux上
  密码root@//192.168.100.3/LNMP-C7:,
  (root@localhost ~) # cd/mnt,,# #切换目录到/mnt,
  [root@localhost码头工人]# ls
  debian - 7.0 - x86 - minimal.tar.gz
  [root@localhost mnt] #猫debian - 7.0 - x86 - minimal.tar。广州|进口码头工人- daoke:新的
  # #基于本地模板创建一个镜像
  sha256:487145d2411f0440c50fd93d0e8a9e27610d2de745a25d06955f21c80e65753a
  [root@localhost mnt] #码头工人的图片,# #查看镜像
  库,,,,,标签,,,,,,,形象标识,,,,,创建的大敌;,,,,,大小
  daoke,,,,,,,新,,,,,,,,487145 d2411f,,,,8秒前,,215 mb
  centos,,,,,,最新的大敌;,,,,,0 f3e07c0138f大敌;,,,3个月前,,,220 mb  

3,基于dockefile文件创建

 <代码> [root@localhost ~] # mkdir apache, # #创建一个目录
  root@localhost ~ # cd apache/(root@localhost apache) # vim Dockerfile,# #编写一个dockerfile文件
  从centos,,,,,,,,,,,,,,,,# #基于的基础镜像
  维护者porject & lt; xu>,,,# #维护镜像的用户信息
  运行yum - y更新,,,,,,,,,,,,,# #镜像操作指令安装Apache软件
  运行yum - y安装httpd,,,,,,,,,,# #安装Apache服务,,,,,,,
  80年公开,,,80年,# #开启端口
  添加索引。html/var/www/html/index.html,,# #复制网址首页文件
  添加运行。sh/运行。上海,,,,,# #将执行脚本复制到镜像中
  运行chmod 755/run.sh
  CMD (“/run.sh"),,,,,,# #启动容器时执行脚本
  (root@localhost apache) # vim运行。上海,# #编辑run.sh脚本
  # !/bin/bash
  rm射频/运行/httpd/*,# #清除缓存
  exec/usr/sbin/apachectl - d前景,# #执行apache
  (root@localhost apache) #回声“,这是测试web"比;索引。html,# #创建页面信息
  (root@localhost apache) # ls
  Dockerfile指数。html, run.sh
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null

码头工人中的镜像管理,端口映射和容器互联介绍