Contribute
There are two ways to take part in the network: run a node as an operator, or buy credits as a user.
1. As an operator — run a storage node
Running a storage node contributes its disk to the network. It registers with the index, stores encrypted shards for others, and a background GC loop frees shards that are no longer referenced.
The easiest way is one command (swap in your public IP and the disk you're committing):
docker run -d --name arkel-storage --restart unless-stopped --network host \
-v arkel-data:/var/lib/arkel \
ghcr.io/amr8t/arkel:latest storage \
--addr 0.0.0.0:9001 \
--advertise-addr <your-public-ip>:9001 \
--index-addrs http://index.pc1.arkeldata.com:8001 \
--data-dir /var/lib/arkel/storage-9001 \
--capacity 50GBPrefer Compose? Use the ready-made files in examples/storage-node/: edit arkel-node.toml, then docker compose up -d.
- Identity is auto-generated on first boot into the
arkel-datavolume. - Needs inbound UDP 9001 reachable for direct connections; otherwise iroh falls back to a relay.
capacityis the disk you commit; the index fills it and pays against stored bytes.
Binary / systemd alternative
arkel storage \
--addr 0.0.0.0:9001 \
--advertise-addr <your-public-ip>:9001 \
--index-addrs http://index.pc1.arkeldata.com:8001 \
--data-dir /var/lib/arkel/storageErasure coding means the network survives node failures — your node just stores encrypted shards, and no single node holds your data in the clear.
Planned: get credited for contributing storage to the network.
2. As a user — buy credits
Planned: buy credits for increasing usage limits.