Run a data server
The data server, warehouse-data, is one program: no database or anything else to install. Its data is one SQLite file and a folder of photos. It runs on a Raspberry Pi, a Linux PC or server, on Windows, or in Docker.
On a Raspberry Pi or a Linux PC
Download the binary for the machine from the download page:
| File | For |
|---|---|
warehouse-data-linux-arm64 |
Raspberry Pi 3, 4, 5 with a 64-bit OS |
warehouse-data-linux-armv7 |
Raspberry Pi 2, 3, 4 with a 32-bit OS |
warehouse-data-linux-armv6 |
Raspberry Pi Zero and 1 |
warehouse-data-linux-amd64 |
Linux PCs and servers |
chmod +x warehouse-data-linux-arm64
./warehouse-data-linux-arm64 password # the Manage page's password
./warehouse-data-linux-arm64 # serves on port 8000
Its data is in ~/.local/share/warehouse. To start it with the machine, run it as a systemd
service, or in Docker.
On Windows
Download warehouse-data-windows-amd64.exe, then in a terminal:
warehouse-data-windows-amd64.exe password
warehouse-data-windows-amd64.exe
Its data is in %LOCALAPPDATA%\Warehouse. Windows asks once to let it through the firewall:
allow it on private networks.
In Docker
Build the image from the source (./build.sh image),
then:
docker run -d --name warehouse -p 8000:8000 -v warehouse:/data --restart unless-stopped warehouse-data
docker exec -it warehouse /warehouse-data password
Connect
Open http://<the machine's address>:8000/manage/, e.g. http://192.168.1.10:8000/manage/, and
sign in. Use the address the phones will use, not localhost: it goes into the phones' QR codes.
Then connect a phone and, if you like, Claude.
When the server is reached under another name than the one you open the Manage page with, start it
with --public-url http://192.168.1.10:8000 (or WAREHOUSE_PUBLIC_URL).
From outside your home
The server speaks plain http. To reach it from anywhere, put it behind something that adds https:
- Tailscale:
tailscale serve --bg 8000gives it an https address on your tailnet. - A web server with a certificate: Caddy, or nginx-proxy with Let's Encrypt in Docker.
It takes X-Forwarded-Proto and X-Forwarded-For from the proxy.
Backup
warehouse-data backup /path/to/new-folder
makes a consistent copy of the database and the photos while the server runs. Don't copy the database file of a running server by hand.
Other commands
warehouse-data help lists them: tokens (token add, token list, token revoke), version,
and health (for Docker's health check).
Next: Ask Claude