-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
171 lines (139 loc) · 6.85 KB
/
Copy path.env.example
File metadata and controls
171 lines (139 loc) · 6.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
# .env.example — DX Cluster stack environment variables
#
# Copy this file to .env and fill in your values:
# cp .env.example .env
#
# IMPORTANT: .env is listed in .gitignore. Never commit real secrets.
# ===========================================================================
# ---------------------------------------------------------------------------
# DXSpider node identity
# Change these to your own callsign and QTH before first boot.
# ---------------------------------------------------------------------------
# Your node callsign (the DXSpider node identifier, usually CALL-N).
NODE_CALL=N0CALL-2
# Your personal/sysop callsign (single callsign, no SSID).
SYSOP_CALL=N0CALL
# Sysop display name shown in DXSpider headers.
SYSOP_NAME=Sysop
# Maidenhead grid locator for your node (6 chars).
LOCATOR=AA00aa
# QTH description string (free text, shown to connected users).
NODE_QTH=Unknown QTH
# Sysop contact email (embedded in DXVars.pm).
SYSOP_EMAIL=sysop@example.com
# ---------------------------------------------------------------------------
# DXSpider ports
# These rarely need changing; keep in sync if you change them.
# ---------------------------------------------------------------------------
# Telnet port for cluster users and inter-cluster peering.
NODE_TELNET_PORT=7300
# Internal port for the ttyd web console (NOT published to host; Caddy proxies
# this under /cluster). Change only if you have a port conflict inside the
# container network.
SYSOP_WEB_PORT=8080
# ---------------------------------------------------------------------------
# DXSpider ttyd web console credentials
# MUST be changed for any node accessible from the internet.
# ---------------------------------------------------------------------------
TTYD_USER=sysop
TTYD_PASSWORD=changeme
# ---------------------------------------------------------------------------
# Config overwrite behaviour
# Set to "yes" to regenerate DXVars.pm and Listeners.pm from the env vars
# above on every container start (overwrites any manual edits in the volume).
# Leave as "no" (default) to preserve operator-edited configs across restarts.
# ---------------------------------------------------------------------------
OVERWRITE_CONFIG=no
# ---------------------------------------------------------------------------
# Postgres credentials
#
# POSTGRES_PASSWORD and the password embedded in DX_DB_DSN MUST match.
# If you change the password here, update DX_DB_DSN to match.
#
# Example: if POSTGRES_PASSWORD=mysecret, set:
# DX_DB_DSN=postgresql://dxstats:mysecret@postgres:5432/dxstats
# ---------------------------------------------------------------------------
POSTGRES_PASSWORD=dxstats
DX_DB_DSN=postgresql://dxstats:dxstats@postgres:5432/dxstats
# ---------------------------------------------------------------------------
# Stats service — monitor user credentials
#
# DX_MONITOR_USER is the callsign-like username the stats ingestor uses to
# log in to DXSpider via telnet and receive the live spot stream.
#
# IMPORTANT: DXSpider validates logins against its user database by callsign.
# The default "statsmon" may be rejected as a non-callsign-shaped value by
# some DXSpider versions. If you see connection failures in stats-svc logs:
# - Change DX_MONITOR_USER to a callsign-shaped value (e.g., N0CALL-9)
# and register it via the sysop console before starting the stack.
# - Or add the user via: (inside dxspider container)
# perl /spider/perl/create_user.pl statsmon
#
# DX_MONITOR_PASSWORD must match whatever is registered in DXSpider for this
# user. Change it from the default.
# ---------------------------------------------------------------------------
DX_MONITOR_USER=statsmon
DX_MONITOR_PASSWORD=changeme
# ---------------------------------------------------------------------------
# Stats service — tuning (optional; defaults are sensible)
# ---------------------------------------------------------------------------
# How often (seconds) stats-svc polls `show/users` for connected-user list.
DX_USERS_POLL_SECONDS=20
# On first boot, read existing DXSpider spot files into Postgres so charts
# are populated immediately rather than starting from zero.
DX_BACKFILL_ON_START=true
# DXSpider telnet host/port as seen from inside the container network.
# Leave as-is (service name resolves via Docker DNS).
DX_HOST=dxspider
DX_PORT=7300
# Path inside the stats-svc container where DXSpider spot files are readable.
# The dxspider-data volume is mounted at /spider-spots:ro; DXSpider writes
# spots under local_data/spots, so the effective path is as below.
# Change only if you alter the volume mount path in docker-compose.yml.
DX_SPOT_FILES_DIR=/spider-spots/spots
# ---------------------------------------------------------------------------
# Caddy — web/TLS
#
# DOMAIN=localhost Plain HTTP (port 80 only); suitable for LAN/dev.
# DOMAIN=dx.example.com Automatic Let's Encrypt TLS (ports 80 + 443).
#
# When using a real domain: ensure DNS A/AAAA points to this host and ports
# 80 + 443 are open in your firewall before starting the stack.
# ---------------------------------------------------------------------------
DOMAIN=localhost
# ---------------------------------------------------------------------------
# Telnet onboarding — dashboard link in the connect MOTD
#
# Every telnet user sees a branded message-of-the-day on connect that
# includes a link to the live stats dashboard. Leave DASHBOARD_URL blank
# to derive it from DOMAIN automatically:
# DOMAIN=localhost -> http://localhost/
# DOMAIN=dx.example.com -> https://dx.example.com/
# Set DASHBOARD_URL explicitly only to override (e.g. a non-root path,
# a different host, or a fixed scheme):
# DASHBOARD_URL=https://dx.example.com/stats/
# ---------------------------------------------------------------------------
DASHBOARD_URL=
# ---------------------------------------------------------------------------
# DXSpider source — build-time overrides
#
# SPIDER_REPO / SPIDER_BRANCH / SPIDER_SHA are NOT consumed by docker-compose;
# they are NOT passed as build args. To override the source at build time use
# the CLI directly (see the comment in docker-compose.yml):
#
# docker compose build \
# --build-arg SPIDER_REPO=https://github.com/your-org/dxspider.git \
# --build-arg SPIDER_BRANCH=mojo \
# --build-arg SPIDER_SHA=<pinned-sha> \
# dxspider
#
# Dockerfile defaults (single source of truth):
# EA3CV mojo fork: https://github.com/EA3CV/dx-spider.git
# Branch: mojo SHA: 63d47180dc195e026bae23446eb9b798a0e923d6
#
# Alternative: latchdevel full-history mirror (frozen 2022-02-07):
# https://github.com/latchdevel/DXspider.git SHA: e61ab5eeea22241ea8d8f1f6d072f5249901d788
#
# Production recommendation: self-mirror EA3CV mojo to a private git server,
# verify the SHA, and pass your mirror URL via --build-arg at build time.
# ---------------------------------------------------------------------------