You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix deploy flow: build full spec from YAML, resolve ${VAR} in volumes
The deploy endpoint was only sending image + env to workers, missing
ports, volumes, network_mode, cap_add, privileged, and command.
Now builds the complete spec from the YAML definition.
Volume paths now support ${VAR} substitution using env vars, so
services like Storj can ask users for host paths via the deploy form.
Also updates Storj: remove auth token requirement (eliminated mid-2025),
add IDENTITY_DIR and STORAGE_DIR as user-input env vars, add UDP port
for QUIC, update guide and signup URL.
Copy file name to clipboardExpand all lines: docs/guides/storj.md
+27-19Lines changed: 27 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,7 @@ Storj is a decentralized cloud storage network where you earn by renting out you
17
17
| Payout frequency | Monthly |
18
18
| Payment methods | Crypto |
19
19
20
-
> ~$1.50/TB stored + $2/TB egress + $2.74/TB audit/repair. Earnings scale with disk allocated and node age. First 9 months have held-back escrow. Port 28967 must be forwarded.
20
+
> ~$1.50/TB stored + $2/TB egress + $2.74/TB audit/repair. Earnings scale with disk allocated and node age. First 9 months have held-back escrow. Port 28967 (TCP+UDP) must be forwarded.
21
21
22
22
## Requirements
23
23
@@ -31,9 +31,11 @@ Storj is a decentralized cloud storage network where you earn by renting out you
31
31
32
32
## Setup Instructions
33
33
34
-
### 1. Create an account
34
+
### 1. No account needed
35
35
36
-
Sign up at [Storj](https://www.storj.io/node). No referral program available.
36
+
Storj storage nodes are **permissionless** — no signup, no account, no auth token. You just run the software. The old authorization token requirement was removed in mid-2025.
37
+
38
+
Documentation has moved to [storj.dev/node](https://storj.dev/node/get-started/setup).
The process outputs progress like `Generated 50000 keys; best difficulty so far: 34`. It's done when it reaches difficulty 36 and exits. Files created: `ca.cert`, `ca.key`, `identity.cert`, `identity.key`.
52
54
53
-
### 3. Authorize the identity
54
-
55
-
After identity creation, authorize it with an auth token from the Storj dashboard:
Verify: `identity.cert` should have 3 certificate entries, `ca.cert` should have 2.
62
-
63
-
### 4. Port forwarding
55
+
### 3. Port forwarding
64
56
65
57
Forward these ports through your router to the server running the node:
66
-
-**TCP 28967** — Storage node traffic (required)
58
+
-**TCP+UDP 28967** — Storage node traffic (required, UDP for QUIC)
67
59
-**TCP 14002** — Dashboard/monitoring (optional, local access only)
68
60
61
+
### 4. Get an ERC-20 wallet address
62
+
63
+
You need an Ethereum-compatible wallet address to receive STORJ token payouts. Any ERC-20 wallet works (MetaMask, Trust Wallet, Ledger, etc.). If you already have an Ethereum address from other DePIN services, you can reuse it. Storj also supports zkSync L2 payouts (same address, lower gas fees).
64
+
69
65
### 5. Deploy with CashPilot
70
66
71
-
In the CashPilot web UI, find **Storj** in the service catalog and click **Deploy**. Enter the required credentials and CashPilot will handle the rest.
67
+
In the CashPilot web UI, find **Storj** in the service catalog and click **Deploy**. You'll be asked for:
68
+
-**Wallet address** — your ERC-20 wallet for payouts
69
+
-**Email** — for operator notifications
70
+
-**External address** — your public IP or DDNS hostname with port (e.g. `84.54.27.229:28967`)
71
+
-**Storage allocation** — how much disk space to offer (e.g. `2TB`)
72
+
-**Identity path** — host directory where your identity files are stored
73
+
-**Storage path** — host directory on a spinning disk (HDD) for storing data
74
+
75
+
CashPilot will handle the container creation with proper volume mounts.
72
76
73
77
## Docker Configuration
74
78
@@ -81,12 +85,16 @@ In the CashPilot web UI, find **Storj** in the service catalog and click **Deplo
|`WALLET`| Wallet address | Yes | No | ERC-20 wallet address for STORJ token payouts (or zkSync) |
83
87
|`EMAIL`| Email | Yes | No | Email address for operator notifications |
84
-
|`ADDRESS`| External address | Yes | No |External IP or DDNS hostname with port (e.g. mynode.ddns.net:28967) |
88
+
|`ADDRESS`| External address | Yes | No |Public IP or DDNS hostname with port (e.g. mynode.ddns.net:28967) |
85
89
|`STORAGE`| Storage allocation | Yes | No | Maximum disk space to allocate (e.g. 2TB) (default: `1TB`) |
90
+
|`IDENTITY_DIR`| Identity directory | Yes | No | Host path where identity files are stored (ca.cert, identity.cert, etc.) |
91
+
|`STORAGE_DIR`| Storage directory | Yes | No | Host path on a spinning disk (HDD) for Storj data storage |
86
92
87
93
### Important Notes
88
94
95
+
-**No signup required**: Storj nodes are permissionless since mid-2025. No auth token, no account creation.
89
96
-**Escrow period**: First 9 months of operation have held-back escrow (75% of storage fees held, released gradually). This incentivizes long-term operation.
90
-
-**One node per IP**: Storj recommends one node per public IP for optimal satellite allocation.
97
+
-**One node per public IP**: Storj recommends one node per public IP for optimal satellite allocation. Nodes on the same /24 subnet share data allocation.
91
98
-**Uptime matters**: Nodes with poor uptime get less data. Aim for 99.5%+ uptime.
92
-
-**Disk selection**: Always use spinning disks (HDD). The data stored is cold storage — IOPS don't matter, capacity does.
99
+
-**Disk selection**: Always use spinning disks (HDD). Storj data is cold storage — IOPS don't matter, capacity does. SSDs offer no advantage and cost more per TB.
100
+
-**QUIC**: UDP port 28967 enables the QUIC protocol for faster transfers. Forward both TCP and UDP.
0 commit comments