Files
hertzbeat/script/docker-compose/README.md
T
2026-08-27 11:32:57 +08:00

37 lines
2.1 KiB
Markdown

## Docker-Compose Deploy
Suggest the [HertzBeat + GreptimeDB + Postgresql Solution](hertzbeat-postgresql-greptimedb) for the best performance and stability.
Notes:
- MySQL, MariaDB, OceanBase, and TiDB SQL query metrics can use the built-in MySQL-compatible query engine without `mysql-connector-j`.
- If you place `mysql-connector-j` in `ext-lib`, HertzBeat prefers JDBC after restart.
- Oracle and DB2 still require external JDBC driver jars in `ext-lib`.
## Listener scope for every quick-start variant
All five Docker Compose variants publish host ports on `127.0.0.1` by
default. This includes the HertzBeat listeners and the development database or
time-series database ports. Containers still communicate over their internal
`hertzbeat` network, so ordinary local use needs no override.
- `1157` (web/API) and `1158` (manager/collector transport) use
`HERTZBEAT_BIND_ADDRESS`.
- `14317` (OTLP/gRPC ingestion) uses the independent
`HERTZBEAT_OTLP_BIND_ADDRESS` override.
- Database and time-series database development ports remain loopback-only.
For a remote Collector, copy the selected variant's `.env.example` to `.env`
and set `HERTZBEAT_BIND_ADDRESS` to a reachable manager address. Expose `1158`
only to Collector source networks. Set `HERTZBEAT_OTLP_BIND_ADDRESS` separately
only for trusted OTLP senders. Before using `0.0.0.0`, replace bundled/default
credentials, apply firewall or security-group restrictions, and configure TLS.
Run `docker compose config` to inspect the final bindings before startup.
- Use Postgresql + GreptimeDB as HertzBeat dependent storage -> [HertzBeat+PostgreSQL+GreptimeDB Solution](hertzbeat-postgresql-greptimedb)
- Use Postgresql + VictoriaMetrics as HertzBeat dependent storage -> [HertzBeat+PostgreSQL+VictoriaMetrics Solution](hertzbeat-postgresql-victoria-metrics)
- Use Mysql + VictoriaMetrics as HertzBeat dependent storage -> [HertzBeat+Mysql+VictoriaMetrics Solution](hertzbeat-mysql-victoria-metrics)
- Use Mysql + IoTDB as HertzBeat dependent storage -> [HertzBeat+Mysql+IoTDB Solution](hertzbeat-mysql-iotdb)
- Use Mysql + Tdengine as HertzBeat dependent storage -> [HertzBeat+Mysql+Tdengine Solution](hertzbeat-mysql-tdengine)