version: '3.1' services: postgres: image: postgres:9-alpine container_name: postgres hostname: postgres restart: always environment: - POSTGRES_DB=overflow - POSTGRES_USER=overflow - POSTGRES_PASSWORD=qwer5795 # - POSTGRES_INITDB_ARGS="--data-checksums" volumes: - /service/overflow/data/postgres/var/lib/postgresql/data:/var/lib/postgresql/data ports: - "5432:5432" networks: - overflow redis: image: docker.loafle.net/library/redis:4-alpine container_name: redis hostname: redis restart: always # volumes: # - /service/overflow/data/redis/data:/data # - /service/overflow/data/redis/redis.conf:/usr/local/etc/redis/redis.conf ports: - 6379:6379 networks: - overflow zoo1: image: docker.loafle.net/library/zookeeper:3.4.11-alpine container_name: zoo1 hostname: zoo1 restart: always environment: # ZOO_TICK_TIME: 2000 # ZOO_INIT_LIMIT: 5 # ZOO_SYNC_LIMIT: 2 # ZOO_MAX_CLIENT_CNXNS: 60 # ZOO_STANDALONE_ENABLED: false ZOO_MY_ID: 1 ZOO_SERVERS: server.1=zoo1:2888:3888 volumes: - /service/overflow/data/zoo1/var/zookeeper/conf:/var/zookeeper/conf - /service/overflow/data/zoo1/var/zookeeper/data:/var/zookeeper/data - /service/overflow/data/zoo1/var/zookeeper/datalog:/var/zookeeper/datalog ports: - 2181:2181 - 2888 - 3888 networks: - overflow kafka1: image: docker.loafle.net/library/kafka:1.1.0-alpine container_name: kafka1 hostname: kafka1 restart: always environment: KAFKA_BROKER_ID: 1 KAFKA_ADVERTISED_LISTENERS: "PLAINTEXT://kafka1:9092" KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181" # name:partitions:replicas:cleanup.policy KAFKA_CREATE_TOPICS: overflow-metric-topic:1:1 volumes: - /service/overflow/data/kafka1/var/kafka/config:/var/kafka/config - /service/overflow/data/kafka1/var/kafka/logs:/var/kafka/logs - /service/overflow/data/kafka1/var/kafka/kafka-logs:/var/kafka/kafka-logs ports: - 9092:9092 networks: - overflow depends_on: - zoo1 influxdb: image: docker.loafle.net/library/influxdb:1.5.2-alpine container_name: influxdb hostname: influxdb restart: always environment: - INFLUXDB_HOSTNAME=influxdb - INFLUXDB_GRAPHITE_ENABLED=true # Automatically initializes a database with the name of this environment variable. - INFLUXDB_DB=db0 volumes: - /service/overflow/data/influxdb/var/lib/influxdb:/var/lib/influxdb ports: - 18086:8086 # HTTP API port - 12003:2003 # Graphite support, if it is enabled networks: - overflow central: image: docker.loafle.net/overflow/central:1.0.0-SNAPSHOT container_name: central hostname: central restart: always volumes: - /service/overflow/data/central/var/central/logs:/var/central/logs ports: - 9111:9111 networks: - overflow depends_on: - postgres - redis - kafka1 - influxdb member_gateway_rest: image: docker.loafle.net/overflow/member_gateway_rest:1.0.0-SNAPSHOT container_name: member_gateway_rest hostname: member_gateway_rest restart: always volumes: - /service/overflow/data/member_gateway_rest/var/overflow/logs:/var/overflow/logs ports: - 19080:80 networks: - overflow depends_on: - central member_gateway_rpc: image: docker.loafle.net/overflow/member_gateway_rpc:1.0.0-SNAPSHOT container_name: member_gateway_rpc hostname: member_gateway_rpc restart: always volumes: - /service/overflow/data/member_gateway_rpc/var/overflow/logs:/var/overflow/logs ports: - 19090:80 networks: - overflow depends_on: - central probe_gateway_rpc: image: docker.loafle.net/overflow/probe_gateway_rpc:1.0.0-SNAPSHOT container_name: probe_gateway_rpc hostname: probe_gateway_rpc restart: always volumes: - /service/overflow/data/probe_gateway_rpc/var/overflow/logs:/var/overflow/logs ports: - 19100:80 networks: - overflow depends_on: - central probe_gateway_metric: image: docker.loafle.net/overflow/probe_gateway_metric:1.0.0-SNAPSHOT container_name: probe_gateway_metric hostname: probe_gateway_metric restart: always volumes: - /service/overflow/data/probe_gateway_metric/var/overflow/logs:/var/overflow/logs ports: - 19110:80 networks: - overflow depends_on: - central networks: overflow: external: false