-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
100 lines (75 loc) · 4.4 KB
/
Copy path.env.example
File metadata and controls
100 lines (75 loc) · 4.4 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
# ─── REQUIRED ────────────────────────────────────────────────────────────────
# Master secret — used to encrypt stored credentials and sign internal JWTs.
# Generate with: openssl rand -hex 32
PROXYOS_SECRET=change-me-min-32-chars-generate-with-openssl-rand-hex-32
# The full URL where the ProxyOS dashboard will be served.
#
# Option A — Public domain with TLS (recommended for internet-facing deployments):
# PROXYOS_URL=https://proxy.yourdomain.com
# Caddy will automatically request a TLS certificate via Let's Encrypt.
# DNS must point to this server before first run.
#
# Option B — Tailscale / Netbird / local IP access (no domain required):
# Leave PROXYOS_URL unset or set to your Tailscale/Netbird IP + port.
# Access the dashboard at http://<tailscale-ip>:3000
# Caddy still runs and proxies your routes, but the dashboard is served
# directly by Next.js on port 3000 without TLS.
# Example: PROXYOS_URL=http://100.64.0.1:3000
#
# Option C — Tailscale with MagicDNS (hostname + free TLS from Tailscale):
# Run: tailscale cert your-machine.tailnet.ts.net (on the host)
# Then: PROXYOS_URL=https://your-machine.tailnet.ts.net
#
PROXYOS_URL=https://proxy.yourdomain.com
# ─── PORTS ───────────────────────────────────────────────────────────────────
# All ports are configurable — change if something else is already on these ports.
# Dashboard port (Next.js) — access at http://<ip>:<port>
PROXYOS_DASHBOARD_PORT=3000
# Caddy HTTP port (required for Let's Encrypt HTTP-01 challenge and HTTP→HTTPS redirect)
PROXYOS_HTTP_PORT=80
# Caddy HTTPS port (TLS termination for all your proxied routes)
PROXYOS_HTTPS_PORT=443
# ─── OPTIONAL — INSTANCE ─────────────────────────────────────────────────────
# Port for agent WebSocket connections (Central only)
# PROXYOS_AGENT_PORT=7890
# Caddy Admin API address — do NOT expose this publicly
# CADDY_ADMIN=localhost:2019
# SQLite database path (inside the container)
# PROXYOS_DB_PATH=/data/proxyos.db
# Log level: debug | info | warn | error
# LOG_LEVEL=info
# ─── OPTIONAL — TLS / ACME ───────────────────────────────────────────────────
# Email for Let's Encrypt / ZeroSSL account registration
# ACME_EMAIL=you@yourdomain.com
# ACME directory URL (default: Let's Encrypt production)
# ACME_CA=https://acme-v02.api.letsencrypt.org/directory
# Cloudflare API token — required for DNS-01 challenges (private/wildcard domains)
# CLOUDFLARE_API_TOKEN=
# ─── OPTIONAL — AGENT ONLY ───────────────────────────────────────────────────
# Only set these if running the agent image (not the full Central)
# CENTRAL_URL=https://proxy.yourdomain.com
# AGENT_TOKEN=
# AGENT_ID=
# ─── OPTIONAL — BILLING ──────────────────────────────────────────────────────
# Required only for the cloud-hosted tier. Leave blank for self-hosted.
# LEMONSQUEEZY_API_KEY=
# LEMONSQUEEZY_WEBHOOK_SECRET=
# LEMONSQUEEZY_STORE_ID=
# Cloud plan variant IDs (from your Lemon Squeezy store)
# PROXYOS_SOLO_MONTHLY_VARIANT_ID=
# PROXYOS_SOLO_ANNUAL_VARIANT_ID=
# PROXYOS_TEAMS_MONTHLY_VARIANT_ID=
# PROXYOS_TEAMS_ANNUAL_VARIANT_ID=
# Self-hosted licence variant IDs
# PROXYOS_SH_PRO_MONTHLY_VARIANT_ID=
# PROXYOS_SH_PRO_ANNUAL_VARIANT_ID=
# PROXYOS_SH_TEAMS_MONTHLY_VARIANT_ID=
# PROXYOS_SH_TEAMS_ANNUAL_VARIANT_ID=
# Billing redirect URLs
# BILLING_SUCCESS_URL=https://proxy.yourdomain.com/billing/success
# BILLING_CANCEL_URL=https://proxy.yourdomain.com/billing
# Trial length in days
# TRIAL_DAYS=14
# ─── OPTIONAL — NEXT.JS PUBLIC ───────────────────────────────────────────────
# Set to 'cloud' for the managed SaaS tier, leave as 'homelab' for self-hosted
# NEXT_PUBLIC_PROXYOS_TIER=homelab