Skip to content

Commit 279ca72

Browse files
Zorlinclaude
andcommitted
docs: Update Docker installation guide for working deployment
- Fix image reference: riffcc/dragonfly:v0.1.0-alpha1 → ghcr.io/riffcc/dragonfly:latest - Add restart policy, RUST_LOG env var, proper volume name - Add PXE boot networking section (host mode for DHCP/TFTP) - Add custom port and data persistence/backup sections - Update quick-start Docker and native download URLs to use latest release - Use docker compose (v2) instead of docker-compose Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 5905878 commit 279ca72

2 files changed

Lines changed: 86 additions & 36 deletions

File tree

content/docs/installation/docker.md

Lines changed: 58 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,71 @@ sidebar:
88
next: /docs/installation/production-setup/
99
---
1010

11-
You can run Dragonfly using Docker Compose:
11+
You can run Dragonfly using Docker Compose.
1212

1313
Save this file as `docker-compose.yml`:
14-
```
14+
15+
```yaml
1516
services:
1617
dragonfly:
17-
image: riffcc/dragonfly:v0.1.0-alpha1
18-
volumes:
19-
- config:/var/lib/dragonfly
18+
image: ghcr.io/riffcc/dragonfly:latest
19+
restart: unless-stopped
2020
ports:
21-
- "3000:3000" # Main web interface
22-
- "67:67" # DHCP stapling service
23-
- "69:69" # TFTP service
21+
- "3000:3000"
22+
volumes:
23+
- dragonfly-data:/var/lib/dragonfly
24+
environment:
25+
- RUST_LOG=info
26+
27+
volumes:
28+
dragonfly-data:
29+
```
30+
31+
Then run:
32+
33+
```bash
34+
docker compose up -d
2435
```
2536

26-
Edit it to your needs, then run
37+
Visit the web interface at `http://localhost:3000`
38+
(or `http://your-hostname:3000` if you're not running it locally).
39+
40+
### Networking for PXE boot
41+
42+
The default port-forwarded configuration works for the web UI and basic management. If you need PXE boot functionality (DHCP and TFTP), you'll need host networking:
43+
44+
```yaml
45+
services:
46+
dragonfly:
47+
image: ghcr.io/riffcc/dragonfly:latest
48+
restart: unless-stopped
49+
network_mode: host
50+
volumes:
51+
- dragonfly-data:/var/lib/dragonfly
52+
environment:
53+
- RUST_LOG=info
54+
55+
volumes:
56+
dragonfly-data:
2757
```
28-
docker-compose up -d
58+
59+
Host networking is required because DHCP uses broadcast packets and TFTP requires direct socket access, which don't work through Docker's port forwarding.
60+
61+
### Customising the port
62+
63+
To run on a different port, change the port mapping:
64+
65+
```yaml
66+
ports:
67+
- "8080:3000" # Access on port 8080 instead
2968
```
3069
31-
Visit the web interface at http://localhost:3000
32-
(or `http://your-hostname:3000` if you're not running it locally)
70+
### Data persistence
71+
72+
All Dragonfly data (database, templates, boot images) is stored in the `dragonfly-data` volume. This persists across container restarts and upgrades.
73+
74+
To back up your data:
75+
76+
```bash
77+
docker run --rm -v dragonfly-data:/data -v $(pwd):/backup debian:trixie-slim tar czf /backup/dragonfly-backup.tar.gz /data
78+
```

content/docs/installation/quick-start.md

Lines changed: 28 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,33 @@ For Linux installations, we suggest using Debian or Ubuntu or running the Docker
1414
You can run Dragonfly using Docker Compose:
1515

1616
Save this file as `docker-compose.yml`:
17-
```
17+
```yaml
1818
services:
1919
dragonfly:
20-
image: riffcc/dragonfly:v0.1.0-alpha1
21-
volumes:
22-
- config:/var/lib/dragonfly
20+
image: ghcr.io/riffcc/dragonfly:latest
21+
restart: unless-stopped
2322
ports:
24-
- "3000:3000" # Main web interface
25-
- "67:67" # DHCP stapling service
26-
- "69:69" # TFTP service
27-
```
23+
- "3000:3000"
24+
volumes:
25+
- dragonfly-data:/var/lib/dragonfly
26+
environment:
27+
- RUST_LOG=info
2828

29-
Edit it to your needs, then run
29+
volumes:
30+
dragonfly-data:
3031
```
31-
docker-compose up -d
32+
33+
Then run:
34+
```bash
35+
docker compose up -d
3236
```
3337

3438
Visit the web interface at `http://localhost:3000`
3539
(or `http://your-hostname:3000` if you're not running it locally)
3640

3741
For more details on running Dragonfly with Docker, see the [Docker guide](/docs/installation/docker).
3842

39-
### Binary Installation
43+
### Native Installation
4044
Download the latest binary from the [releases page](https://github.com/riffcc/dragonfly/releases).
4145

4246
You'll want the version for your computer.
@@ -46,54 +50,54 @@ You'll want the version for your computer.
4650
{{< tab >}}
4751
Download Dragonfly from the [releases page](https://github.com/riffcc/dragonfly/releases).
4852
```
49-
wget -O dragonfly https://github.com/riffcc/dragonfly/releases/download/v0.1.0-alpha1/dragonfly-linux-amd64
53+
wget -O dragonfly https://github.com/riffcc/dragonfly/releases/latest/download/dragonfly-linux-amd64
5054
```
51-
55+
5256
Copy the binary to /usr/local/bin/dragonfly and make it executable:
5357
```
5458
sudo cp dragonfly /usr/local/bin/dragonfly
5559
sudo chmod +x /usr/local/bin/dragonfly
5660
```
57-
61+
5862
Install Dragonfly:
5963
```
6064
sudo dragonfly install
6165
```
62-
66+
6367
You can now visit the web interface on port 3000 `http://<machine-ip-address>:3000`
6468

6569
{{< /tab >}}
6670
<!-- macOS -->
6771
{{< tab >}}
68-
macOS installation relies on installing Dragonfly as a native binary.
72+
macOS installation relies on installing Dragonfly as a native binary.
6973
Future releases will include Homebrew support.
70-
74+
7175
Download Dragonfly from the [releases page](https://github.com/riffcc/dragonfly/releases).
7276
```
73-
wget -O dragonfly https://github.com/riffcc/dragonfly/releases/download/v0.1.0-alpha1/dragonfly-darwin-amd64
77+
wget -O dragonfly https://github.com/riffcc/dragonfly/releases/latest/download/dragonfly-macos-arm64
7478
```
75-
79+
7680
Copy the binary to /usr/local/bin/dragonfly and make it executable:
7781
```
7882
sudo cp dragonfly /usr/local/bin/dragonfly
7983
sudo chmod +x /usr/local/bin/dragonfly
8084
```
81-
85+
8286
Install Dragonfly:
8387
```
8488
sudo dragonfly install
8589
```
86-
90+
8791
You can now visit the web interface on port 3000 `http://<machine-ip-address>:3000`
8892

8993
{{< /tab >}}
90-
94+
9195
<!--Windows -->
9296
{{< tab >}}
9397
Installation on Windows is not currently supported, and support is not planned at this time.
94-
98+
9599
However, you may be able to get Dragonfly running via WSL2 (Windows Subsystem for Linux).
96-
100+
97101
If this is a strong need, please contact us at support@dragonflycomputer.com!
98102
{{< /tab >}}
99103

0 commit comments

Comments
 (0)