File size: 1,785 Bytes
309b968 | 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 | # DaisyChain Quickstart
Two ways to run. **Docker** is the most reliable (especially on Windows).
## A. Docker — one command (demo cluster on one machine)
```bash
docker compose -f docker/docker-compose.yml up --build
# open http://localhost:8080
```
This starts 3 node containers + the dashboard on a Docker network — the whole
pipeline, so you can see connectivity, the capacity plan, and live training.
Stop with `docker compose -f docker/docker-compose.yml down`.
Windows: just run `scripts\setup.bat` and pick **[1] Docker**.
## B. Python — real machines
On **every** machine:
```bash
pip install torch numpy psutil
pip install -e . # from the repo, or `pip install daisychain`
```
Set the cluster env (copy `config/cluster.example.env`), changing only `RANK`
per machine, then run:
```bash
export MASTER_ADDR=100.101.102.10 # coordinator IP (Tailscale 100.x recommended)
export MASTER_PORT=29560
export WORLD_SIZE=3
export RANK=0 # 1, 2, ... on the others
export GLOO_SOCKET_IFNAME=tailscale0 # your mesh/LAN NIC
daisychain-train
```
Windows: run `scripts\setup.bat` and pick **[2] Python** (it prompts for these).
## Watch it
Run the dashboard anywhere that can reach the nodes:
```bash
# edit config/nodes.example.json with your node hosts, then:
daisychain-dashboard # http://localhost:8080
```
## Train your own model
The default is a tiny example task. To train **your** model, see
[CUSTOM_TASK.md](CUSTOM_TASK.md) — copy `examples/my_task_template.py`, fill in
`build_model` / `sample` / `loss`, and set `DAISY_TASK=your_module:YourTask`.
**Before you rely on it, read [LIMITS.md](LIMITS.md).** DaisyChain pools compute,
not memory, and is for *small* models on spare hardware — not GPU-class training.
|