diff options
| author | bndw <ben@bdw.to> | 2026-02-14 12:34:00 -0800 |
|---|---|---|
| committer | bndw <ben@bdw.to> | 2026-02-14 12:34:00 -0800 |
| commit | 860a662ebdfd9b2bd27a754283a25427d13fecbc (patch) | |
| tree | 4eb461b60f559f985355b24ef6d52ea65ff8cdb3 /config.example.yaml | |
| parent | c33395cee66770c4d88a47537c0ed821f6585f62 (diff) | |
feat: add example config for VPS deployment
Add config.example.yaml based on .ship deployment setup:
- gRPC on localhost:50051
- HTTP on localhost:8007 (not 8080)
- Public URL: muxstr.x.bdw.to
- Metrics enabled with dashboard
- Auth/rate-limiting disabled by default
Update .ship/service to use config file instead of individual flags:
- Old: -db -grpc-addr -ws-addr -public-url flags
- New: -config /var/lib/muxstr/config.yaml
Deployment: Copy config.example.yaml to /var/lib/muxstr/config.yaml
Diffstat (limited to 'config.example.yaml')
| -rw-r--r-- | config.example.yaml | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/config.example.yaml b/config.example.yaml new file mode 100644 index 0000000..93f6000 --- /dev/null +++ b/config.example.yaml | |||
| @@ -0,0 +1,45 @@ | |||
| 1 | server: | ||
| 2 | grpc_addr: "localhost:50051" | ||
| 3 | http_addr: "localhost:8007" | ||
| 4 | public_url: "muxstr.x.bdw.to" | ||
| 5 | read_timeout: 30s | ||
| 6 | write_timeout: 30s | ||
| 7 | |||
| 8 | database: | ||
| 9 | path: "relay.db" | ||
| 10 | |||
| 11 | auth: | ||
| 12 | read: | ||
| 13 | enabled: false | ||
| 14 | allowed_npubs: [] | ||
| 15 | write: | ||
| 16 | enabled: false | ||
| 17 | allowed_npubs: [] | ||
| 18 | timestamp_window: 60 | ||
| 19 | skip_methods: [] | ||
| 20 | |||
| 21 | rate_limit: | ||
| 22 | enabled: false | ||
| 23 | default_rps: 10.0 | ||
| 24 | default_burst: 20 | ||
| 25 | ip_rps: 5.0 | ||
| 26 | ip_burst: 10 | ||
| 27 | cleanup_interval: 5m | ||
| 28 | max_idle_time: 10m | ||
| 29 | |||
| 30 | metrics: | ||
| 31 | enabled: true | ||
| 32 | addr: ":9090" | ||
| 33 | path: "/metrics" | ||
| 34 | namespace: "muxstr" | ||
| 35 | subsystem: "relay" | ||
| 36 | |||
| 37 | logging: | ||
| 38 | level: "info" | ||
| 39 | format: "json" | ||
| 40 | output: "stdout" | ||
| 41 | |||
| 42 | storage: | ||
| 43 | auto_compact: true | ||
| 44 | compact_interval: 24h | ||
| 45 | max_event_age: 0s | ||
