码头工人系列13:容器编排(1)

  

一、容器编排基础

  

1,容器编排概念

  
      <李>可以指定各个容器中的程序是有依赖关系的李   <李>比如有个web服务必须在mysql正常的情况下,才能运行,那么这个时候就是web容器是依赖mysql容器的,只有mysql容器正常启动,网络容器才能启动。   

    2,容器编排工具

      <李>码头工人组成李   <李> k8李   <李> k3   

    二,组成详解

      
  

1,什么是构成

  
      <李>码头工人组成将所管理的容器分为三层,分别是工程(项目),服务(服务),容器(容器)   <李>码头工人组成运行目录下的所有文件(docker-compose.yml)组成一个工程,一个工程包含多个服务,每个服务中定义了容器运行的镜像,参数,依赖,一个服务可包括多个容器实例   
  

2,安装compse

  

<强>方法1:用提供的这个conpose文件,将这个文件放到/usr/地方/bin
奥胪饭と讼盗?3:容器编排(1)"
奥胪饭と讼盗?3:容器编排(1)"
<强>方法2:用epel和额外的源中的安装包
<强> 1)配置百胜源

  
 <代码> root@host1 ~ #猫/etc/yum.repos.d/epel.repo
  (epel)
  name=epel
  baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7Server/x86_64/启用=1
  gpgcheck=0  
  

<强> 2)安装docker-compose

  
 <代码> [root@host1 ~] # yum安装docker-compose - y  
  

3,组成参数详解

  

先看一个dyml文件样例
码头工人系列13:容器编排(1)

  
参数1:构建
  
      <李>构建,它可以指定Dockerfile所在文件夹的路径.Compose将会利用它自动构建这个镜像,然后使用这个镜像启动服务容器。   <李>也可以是相对路径,只要上下文确定就可以读取到Dockerfile。
      
    参数2:上下文
      <李>这个是用来指定dockerfile文件的工作目录的李   <李>这是构建的一个子选项李   
  
参数3:dockerfile h5>   <李>指定具体的dockerfile来做镜像李   <李>这是构建的一个子选项李      
参数4:ARGS h5>   <李>设置变量,这些变量仅仅在构建的过程中才会用到李   <李>这是构建的一个子选项李      
参数5:标签/h5>   
      <李>这是构建的一个子选项李   <李>用来指定建立过程中的元数据李   
  
参数6:shm_size h5>   <李>这是构建的一个子选项,控制基于建立构建的镜像的参数配置李   <李>/dev/shm是linux中系统中物理内存的映射,使用的/dev/shm对文件操作的效率会高很多,我在优化系统的时候,常用用到李      
参数7:命令/h5>   
      <李>使用命令可以覆盖容器启动后默认执行的命令。
      
    参数8:图像/h5>   <李>图像则是指定服务的镜像名称或镜像ID。   <李>如果镜像在本地不存在,组成将会尝试拉取这个镜像。   
     <代码>图片:复述
      图片:ubuntu: 14.04
      图片:tutum/influxdb
      图片:example-registry.com: 4000/postgresql
      图片:a4bc65fd  
      
  
参数9:container_name h5>   <李>可以使用这个标签指定容器名称李      
参数10:depends_on h5>   <李>这个标签解决了容器的依赖,启动先后的问题      
案例:下面容器会先启动复述和数据库两个服务,最后才启动web服务:
  

码头工人系列13:容器编排(1)

  
参数11:dns h5>   <李>指定DNS服务器的地址   
 <代码> dns: 8.8.8.8
  域名:
  ——8.8.8.8
  ——9.9.9.9  
     
参数12:dns_search h5>   <李>设置搜索域   
 <代码> dns_search: example.com
  dns_search:
  ——dc1.example.com
  ——dc2.example.com  
     
参数13:tmpfs h5>   <李>挂载临时目录到容器内部   
 <代码> tmpfs:
  ——/运行
  ——/tmp/<代码> 
     
参数14:入口点