version: '3.8'
# Podman-compatible compose file
# Use with: podman-compose up -d
services:
cube-node-1:
build:
context: .
dockerfile: Dockerfile
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:Z
- cube-node-1-hints:/var/lib/cube/hints:Z
networks:
- cube-cluster
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:8080/api/v1/health || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
cube-node-2:
build:
context: .
dockerfile: Dockerfile
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:Z
- cube-node-2-hints:/var/lib/cube/hints:Z
networks:
- cube-cluster
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:8080/api/v1/health || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
cube-node-3:
build:
context: .
dockerfile: Dockerfile
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:Z
- cube-node-3-hints:/var/lib/cube/hints:Z
networks:
- cube-cluster
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:8080/api/v1/health || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
volumes:
cube-node-1-data:
cube-node-1-hints:
cube-node-2-data:
cube-node-2-hints:
cube-node-3-data:
cube-node-3-hints:
networks:
cube-cluster:
driver: bridge