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

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM