tighten docs

This commit is contained in:
Joachim Schlöffel
2026-07-05 23:21:24 +02:00
parent 1c4b598b5c
commit e076b3249a
3 changed files with 50 additions and 92 deletions
+15 -30
View File
@@ -1,8 +1,9 @@
# GreptimeDB Alpine Package
This package builds `greptime` from the upstream GreptimeDB source release and packages OpenRC service subpackages plus default `/etc/greptimedb` configuration.
Builds `greptime` from the upstream source release and packages OpenRC service
subpackages plus `/etc/greptimedb` defaults.
The APKBUILD builds the release directly:
Build command:
```sh
cargo build --profile nightly --locked --bin greptime --features servers/dashboard
@@ -10,9 +11,7 @@ cargo build --profile nightly --locked --bin greptime --features servers/dashboa
## Runtime Layout
The package installs the upstream `greptime` binary as `/usr/bin/greptime`.
OpenRC support is split into component subpackages that map to the documented
GreptimeDB commands:
Installs `/usr/bin/greptime` and component OpenRC packages:
- `greptimedb-docs`: upstream configuration examples and reference files from
`config/`
@@ -22,23 +21,19 @@ GreptimeDB commands:
- `greptimedb-flownode-openrc`: `greptime flownode start`
- `greptimedb-frontend-openrc`: `greptime frontend start`
Default TOML files are installed in `/etc/greptimedb`. The standalone config
listens on the documented local ports:
Default TOML files are installed in `/etc/greptimedb`. Standalone ports:
- `127.0.0.1:4000`: HTTP API and dashboard
- `127.0.0.1:4001`: gRPC
- `127.0.0.1:4002`: MySQL
- `127.0.0.1:4003`: PostgreSQL
GreptimeDB binds to localhost by default. Edit the matching TOML file before
exposing a service on another interface.
Install `greptimedb-docs` for the full upstream configuration reference and
example files under `/usr/share/doc/greptimedb/config`.
Configs bind to localhost by default. Upstream config examples are in
`/usr/share/doc/greptimedb/config`.
## OpenRC Usage
Install and start the standalone service:
Standalone:
```sh
apk add greptimedb greptimedb-docs greptimedb-standalone-openrc
@@ -46,7 +41,7 @@ rc-update add greptimedb.standalone default
rc-service greptimedb.standalone start
```
Install the distributed components when managing a small OpenRC deployment:
Distributed components:
```sh
apk add \
@@ -57,8 +52,7 @@ apk add \
greptimedb-frontend-openrc
```
The package starts each service with `-c /etc/greptimedb/<component>.toml`.
Package wrapper settings live in `/etc/conf.d/greptimedb.<component>`:
Wrapper settings in `/etc/conf.d/greptimedb.<component>`:
- `GREPTIMEDB_CONFIG`: config file path passed with `-c`
- `GREPTIMEDB_LOG_DIR`: component log directory passed with `--log-dir`
@@ -68,35 +62,27 @@ Package wrapper settings live in `/etc/conf.d/greptimedb.<component>`:
- `GREPTIMEDB_OPTS`: extra component arguments appended after package defaults
- `GREPTIMEDB_GLOBAL_OPTS`: arguments inserted before the component command
GreptimeDB's own config environment variables are separate from these OpenRC
wrapper variables. The upstream docs use component prefixes such as
`GREPTIMEDB_STANDALONE`, `GREPTIMEDB_DATANODE`, `GREPTIMEDB_FRONTEND`, and
`GREPTIMEDB_METASRV` with double underscores for nested config keys.
For production clusters, follow the upstream deployment guidance. GreptimeDB
recommends Kubernetes and the GreptimeDB Operator for production self-hosting.
## Package Commands
Refresh the source checksum after changing `pkgver`:
Refresh checksums:
```sh
ALPINE_PACKAGE=greptimedb mise run apk:checksum
```
Build only this package:
Build:
```sh
ALPINE_PACKAGE=greptimedb mise run apk:build
```
Install-test an existing local build without recompiling:
Install-test local build:
```sh
ALPINE_PACKAGE=greptimedb SKIP_BUILD=1 mise run apk:test-install
```
Install-test from a published Gitea Alpine repository:
Install-test published repository:
```sh
ALPINE_PACKAGE=greptimedb \
@@ -106,5 +92,4 @@ ALPINE_REPOSITORY_KEY_URL=https://code.factoring.digital/api/packages/public/alp
mise run apk:test-install
```
The full build can take close to an hour. Do not run it as part of lightweight
metadata or script checks.
Full builds take close to an hour.