Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions content/docs/reference/databroker.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,17 @@ DATABROKER_STORAGE_TYPE=postgres

`databroker_storage_type` is a bootstrap configuration setting and is not configurable in the Console.

</TabItem>
<TabItem value="Zero" label="Zero">

In Pomerium Zero, the storage type is **automatically inferred** from the connection string format and does not need to be configured separately:

- `file:///path/to/directory` → file backend
- `postgres://...` or `postgresql://...` → Postgres backend
- Empty/unset → in-memory (default)

See [Databroker Storage Connection String](#databroker-storage-connection-string) below for configuration details.

</TabItem>
<TabItem value="Kubernetes" label="Kubernetes">

Expand Down Expand Up @@ -84,6 +95,21 @@ DATABROKER_STORAGE_CONNECTION_STRING=file:///var/pomerium/databroker

`databroker_storage_connection_string` is a bootstrap configuration setting and is not configurable in the Console.

</TabItem>
<TabItem value="Zero" label="Zero">

In Pomerium Zero, configure the connection string in the **Settings → General** section of the Zero console. The storage type is automatically inferred from the connection string:

```
file:///var/lib/pomerium
```

:::note

When using the file backend, ensure the specified directory exists and has appropriate permissions. The in-memory backend (when the field is left empty) does not persist data across restarts.

:::

</TabItem>
<TabItem value="Kubernetes" label="Kubernetes">

Expand Down Expand Up @@ -132,6 +158,29 @@ DATABROKER_STORAGE_CONNECTION_STRING_FILE=/run/secrets/db_connection_string

`databroker_storage_connection_string` is a bootstrap configuration setting and is not configurable in the Console.

</TabItem>
<TabItem value="Zero" label="Zero">

In Pomerium Zero, configure the connection string in the **Settings → General** section of the Zero console. The storage type is automatically inferred from the connection string format:

```
postgres://user:password@host:5432/database?sslmode=require
```

or

```
postgresql://user:password@host:5432/database?sslmode=require
```

Both `postgres://` and `postgresql://` schemes are supported and automatically detected as Postgres storage.

:::tip

For production deployments, use a managed Postgres service or ensure your database has proper backups configured. Unlike the in-memory backend, Postgres provides persistent, replicated storage suitable for multi-replica deployments.

:::

</TabItem>
<TabItem value="Kubernetes" label="Kubernetes">

Expand Down
2 changes: 1 addition & 1 deletion content/docs/reference/reference.json
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@
"type": "URL"
},
"data-broker-storage-connection-string": {
"description": "Sets the connection string for the Databroker storage backend.",
"description": "Sets the connection string for the Databroker storage backend. The storage type (memory, file, or Postgres) is automatically inferred from the connection string format: 'file:///' URIs use the file backend, 'postgres://' or 'postgresql://' URIs use the Postgres backend, and empty/unset defaults to in-memory storage (not persisted across restarts).",
"id": "data-broker-storage-connection-string",
"path": "/databroker#databroker-storage-connection-string",
"services": [],
Expand Down