Newer
Older
cactus / docker-compose.yml
@agalyaramadoss agalyaramadoss on 16 Feb 2 KB added document
version: '3.8'

services:
  cube-node-1:
    build: .
    container_name: cube-node-1
    hostname: cube-node-1
    environment:
      - CUBE_NODE_ID=node-1
      - CUBE_HOST=cube-node-1
      - CUBE_PORT=8080
      - CUBE_DATA_DIR=/var/lib/cube/data
      - CUBE_HINTS_DIR=/var/lib/cube/hints
      - JAVA_OPTS=-Xmx1G -Xms512M
    ports:
      - "8080:8080"
    volumes:
      - cube-node-1-data:/var/lib/cube/data
      - cube-node-1-hints:/var/lib/cube/hints
    networks:
      - cube-cluster
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/api/v1/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s
    restart: unless-stopped

  cube-node-2:
    build: .
    container_name: cube-node-2
    hostname: cube-node-2
    environment:
      - CUBE_NODE_ID=node-2
      - CUBE_HOST=cube-node-2
      - CUBE_PORT=8080
      - CUBE_DATA_DIR=/var/lib/cube/data
      - CUBE_HINTS_DIR=/var/lib/cube/hints
      - JAVA_OPTS=-Xmx1G -Xms512M
    ports:
      - "8081:8080"
    volumes:
      - cube-node-2-data:/var/lib/cube/data
      - cube-node-2-hints:/var/lib/cube/hints
    networks:
      - cube-cluster
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/api/v1/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s
    restart: unless-stopped

  cube-node-3:
    build: .
    container_name: cube-node-3
    hostname: cube-node-3
    environment:
      - CUBE_NODE_ID=node-3
      - CUBE_HOST=cube-node-3
      - CUBE_PORT=8080
      - CUBE_DATA_DIR=/var/lib/cube/data
      - CUBE_HINTS_DIR=/var/lib/cube/hints
      - JAVA_OPTS=-Xmx1G -Xms512M
    ports:
      - "8082:8080"
    volumes:
      - cube-node-3-data:/var/lib/cube/data
      - cube-node-3-hints:/var/lib/cube/hints
    networks:
      - cube-cluster
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/api/v1/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s
    restart: unless-stopped

volumes:
  cube-node-1-data:
    driver: local
  cube-node-1-hints:
    driver: local
  cube-node-2-data:
    driver: local
  cube-node-2-hints:
    driver: local
  cube-node-3-data:
    driver: local
  cube-node-3-hints:
    driver: local

networks:
  cube-cluster:
    driver: bridge