Install
Where will Harbor run? Pick your machine, and follow the guide written for it from the first step.
On this page
Harbor installs with one script on any Linux machine with Docker, but getting that machine ready is different on a mini PC at home than on a cloud server. Pick where yours will run; each guide covers that machine from start to finish.
Not sure which?#
- For the most privacy, run it at home on your own hardware. The disk is in your house and encrypted, and nothing about your paperwork sits with a hosting company.
- To avoid hardware altogether, use a cloud server: DigitalOcean or Hetzner Cloud are the most direct. The data is still encrypted at rest on a separate volume, but the hosting company runs the machine it is unlocked on.
- To look around first, try it on your computer, then install for real on one of the others.
What every install needs#
Whichever you pick, the guides come back to the same few things:
- A Linux machine of its own, with Docker. Debian 12 is what the installer is tested on. At least 4 GB of memory; text extraction is the hungry part.
- About 100 GB for documents, on an encrypted volume. The database keeps the text of every document in the clear so that search is fast, so the directory holding it must be encrypted. A second disk, or a cloud provider's volume, is the simple way: the installer encrypts it for you. See The data volume.
- A decision about how you will reach it: privately through Tailscale, directly at a domain of your own, or on your own network. The installer asks. See Reaching your vault.
- Somewhere for backups to go, ideally with a different company than the machine: a Backblaze B2 bucket, an SFTP host, or a second disk. You can also decide after installing. See Backups.
- A printer, at the end. After setup, print the recovery information described in The break-glass envelope. Keep it separate from the server.
The installer describes every question it asks, the variables for an unattended install, and what it checks.