# 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 healthcheck: test: [ "CMD", "pg_isready" ] interval: 10s timeout: 5s retries: 5 start_period: 30s ports: - '15432:5432' environment: POSTGRES_USER: root POSTGRES_PASSWORD: 123456 TZ: Asia/Shanghai PGDATA: /var/lib/postgresql/data/pgdata volumes: - ./dbdata/pgdata:/var/lib/postgresql/data - ./conf/sql:/docker-entrypoint-initdb.d/ networks: - hertzbeat victoria-metrics: image: victoriametrics/victoria-metrics:v1.95.1 container_name: compose-victoria-metrics hostname: victoria-metrics restart: always healthcheck: test: ["CMD", "wget", "-q", "-O", "-", "http://victoria-metrics:8428/-/healthy"] interval: 10s retries: 5 timeout: 5s start_period: 30s environment: TZ: Asia/Shanghai ports: - "18428:8428" volumes: - ./dbdata/tsdbdata:/victoria-metrics-data networks: - hertzbeat hertzbeat: image: apache/hertzbeat:1.8.0 container_name: compose-hertzbeat hostname: hertzbeat restart: always environment: HERTZBEAT_COLLECTOR_MYSQL_QUERY_ENGINE: auto TZ: Asia/Shanghai LANG: zh_CN.UTF-8 depends_on: postgres: condition: service_healthy victoria-metrics: condition: service_healthy volumes: - ./conf/application.yml:/opt/hertzbeat/config/application.yml - ./conf/sureness.yml:/opt/hertzbeat/config/sureness.yml - ./logs:/opt/hertzbeat/logs - ./ext-lib:/opt/hertzbeat/ext-lib ports: - "1157:1157" - "1158:1158" networks: - hertzbeat