# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

version: "3.7"

networks:
  hertzbeat:
    driver: bridge

services:
  postgres:
    image: postgres:15
    container_name: compose-postgresql
    hostname: postgresql
    restart: always
    ports:
      - '5432:5432'
    environment:
        - POSTGRES_USER=root
        - POSTGRES_PASSWORD=abw123456
        - TZ=Asia/Shanghai
    volumes:
        - ./conf/sql:/docker-entrypoint-initdb.d/
    networks:
      - hertzbeat

  iotdb:
    image: apache/iotdb:0.13.3-node
    container_name: compose-iotdb
    hostname: iotdb
    restart: always
    environment:
      TZ: Asia/Shanghai
    ports:
      - "8181"
      - "6667"
    volumes:
      - ./dbdata/iotdbdata:/iotdb/data
    networks:
      - hertzbeat

  hertzbeat:
    image: tancloud/hertzbeat
    container_name: compose-hertzbeat
    hostname: hertzbeat
    restart: always
    environment:
      TZ: Asia/Shanghai
      LANG: zh_CN.UTF-8
    depends_on:
      - postgres
      - iotdb
    volumes:
      - ./conf/application.yml:/opt/hertzbeat/config/application.yml
      - ./conf/sureness.yml:/opt/hertzbeat/config/sureness.yml
    ports:
      - "1157:1157"
    networks:
      - hertzbeat
