zoukankan      html  css  js  c++  java
  • docker-compose简介(一)

    一、简介

    Compose是用于定义和运行多容器Docker应用程序的工具。

    使用compose,可以使用yaml文件配置应用程序的服务。

    然后,通过一个命令,可以从配置中创建和启动所有服务。

    二、使用

    使用compose基本上是一个三步过程:

    1. 用dockerfile,或者镜像定义应用程序的环境,以便在任何地方复制。

    2. 在docker-compose.yml中定义组成应用程序的服务,以便它们可以在单独的环境中一起运行。

    3. 运行docker compose up启动并运行整个应用程序。

    三、命令

    1. 命令格式

    docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
    docker-compose -h|--help

    -f指定yml文件,如果不指定默认为当前文件夹下的docker-compose.yml文件

    2. 创建并且启动containers、启动services、重启services、停止services、删除services

        - docker-compose up | start | restart | stop | rm

    注意:a 第一次使用需要创建containers,因此使用up命令。 docker-compose up

             b 如果使用自定义的yml文件名,需要加-指定文件:docker-compose -f redis.yml up

             c 如果使用自定义的yml文件名,stop,restart,stop,rm命令依然需要加-f指定文件

             d 删除containers需要停止services

    3. 检查yml文件是否编写有误:config

        docker-compose -f redis.yml config

    四、例子 - zookeeper集群

    version: '3.1'
    
    services:
      zoo1:
        image: zookeeper:3.4
        restart: always
        container_name: zoo1
        hostname: zoo1
        ports:
          - 2181:2181
        environment:
          ZOO_MY_ID: 1
          ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
    
      zoo2:
        image: zookeeper:3.4
        restart: always
        container_name: zoo2
        hostname: zoo2
        ports:
          - 2182:2181
        environment:
          ZOO_MY_ID: 2
          ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888
    
      zoo3:
        image: zookeeper:3.4
        restart: always
        container_name: zoo3
        hostname: zoo3
        ports:
          - 2183:2181
        environment:
          ZOO_MY_ID: 3
          ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=0.0.0.0:2888:3888
    

      

  • 相关阅读:
    数据结构实践——败者树归并模拟
    systemctl介绍
    Andriod Atom x86模拟器启动报错。
    (白书训练计划)UVa 11572 Unique Snowflakes(窗体滑动法)
    OpenCV2.3.1在CentOS6.5下的安装
    本学期课程教学要解决这个问题要点备忘录
    firefox浏览器和IE
    [LeetCode] Validate Binary Search Tree
    android性能优化优秀文章
    如何在使用eclipse的情况下,清理android项目中的冗余class文件和资源文件以及冗余图片
  • 原文地址:https://www.cnblogs.com/maduar/p/10777355.html
Copyright © 2011-2022 走看看