Track Everything You Own Without Handing Your Data to a Subscription App
Most people discover they need a home inventory system at the worst possible moment – after a break-in, a house fire, or when filing an insurance claim and realizing they cannot account for half of what they owned. Homebox is an open-source home inventory and asset management tool that runs entirely on your own hardware, stores nothing in the cloud, and costs nothing beyond the server you are already running. It gives you a searchable, organized database of your belongings, complete with locations, labels, purchase dates, warranty information, and photos.
Self-hosting Homebox takes about fifteen minutes if you have Docker installed. The result is a private web interface you can access from any device on your network – or expose externally through a reverse proxy if you want access while traveling. This guide walks through installation, initial configuration, and the practical habits that make the tool actually useful over time.

What You Need Before Starting
Homebox runs as a single Docker container with no external database dependency – it uses SQLite internally, which keeps the setup minimal. You need a machine running Docker and Docker Compose, with at least a few hundred megabytes of free storage to start. A Raspberry Pi 4, an old laptop, a NAS, or any always-on Linux machine works fine. The official image is available on GitHub under the sysadmin-io organization, and the container is lightweight enough to sit alongside other self-hosted services without meaningful resource competition.
Before pulling the image, decide where your data will live on the host machine. Homebox stores its SQLite database and uploaded photos in a single directory, so you will mount that as a volume. Choose a path on a drive with enough space to hold photos – if you plan to photograph every appliance, tool, and piece of electronics in your home, budget a few gigabytes at minimum. Write access to that directory is required, and you should make sure it is included in whatever backup routine you already run.
Installing Homebox with Docker Compose
Create a directory for the project – something like /opt/homebox on Linux – and inside it create a docker-compose.yml file. The basic configuration defines one service using the ghcr.io/sysadmin-io/homebox:latest image. Set the container name, map port 7745 on the host to port 7745 in the container, and mount your chosen data directory to /data inside the container. Set the restart policy to unless-stopped so Homebox survives reboots automatically.
A minimal working compose file looks like this:
- image: ghcr.io/sysadmin-io/homebox:latest
- container_name: homebox
- ports: “7745:7745”
- volumes: /your/data/path:/data
- restart: unless-stopped
Run docker compose up -d from inside that directory. Docker will pull the image and start the container. Navigate to http://your-server-ip:7745 in a browser and you will see the Homebox registration screen. Create your admin account – this is the only account you need for a single-household setup, though Homebox does support multiple users if you share the instance with a partner or roommate.
If you want to access Homebox outside your home network, the cleanest approach is putting it behind a reverse proxy with HTTPS. Caddy works well for this – you can follow a guide to setting up Caddy as a reverse proxy to point a subdomain at port 7745 with automatic TLS. This avoids exposing the app on a bare port and gives you a proper domain name to bookmark on your phone.

Organizing Your Inventory Structure
Homebox organizes items through two concepts: locations and labels. Locations are physical places – rooms, closets, shelves, boxes, the garage. Labels are freeform tags you apply to items regardless of where they are stored. Before adding a single item, spend five minutes mapping out your locations. A reasonable starting structure might include Living Room, Kitchen, Bedroom, Home Office, Garage, Attic, and a catch-all like Storage. You can nest locations inside each other, so Garage can contain Shelving Unit A and Shelving Unit B if your space is organized that way.
Labels complement locations by letting you filter across rooms. Useful label sets include warranty-active, insured, needs-repair, lent-out, and seasonal. These let you pull a report of everything currently under warranty regardless of which room it sits in, which becomes genuinely useful when an appliance starts behaving strangely and you need to know whether you still have coverage.
Adding Items and Building the Habit
The most effective way to populate Homebox is not to try cataloging your entire home in one session. That approach stalls fast. Instead, start with the highest-value items first – electronics, appliances, tools, jewelry, bicycles, anything you would specifically mention in an insurance claim. For each item, fill in the name, assign a location, note the purchase price and date if you know them, and upload a photo. The photo is what transforms a text record into something an insurance adjuster can actually work with.
Homebox has a dedicated warranty tracking section where you can enter expiration dates and attach scanned receipts or warranty documents as files. This alone justifies the setup for many households. Knowing a warranty expires in three months – rather than discovering it expired last month – is the kind of low-effort win that self-hosted tools rarely advertise but consistently deliver.
After the initial pass on high-value items, build a simple trigger habit: whenever something new comes into the house, add it to Homebox before the receipt goes in the trash. This takes about two minutes per item and keeps the database current without requiring periodic audit sessions. The mobile browser experience on Homebox is functional enough to do this standing in the kitchen right after unboxing something.

Maintaining and Backing Up Your Data
Homebox updates ship regularly through the GitHub container registry. To update, pull the latest image with docker compose pull and restart with docker compose up -d. Because everything is stored in your mounted volume, updates are non-destructive – the database and photos persist across container replacements. Check the project’s GitHub releases page occasionally for any breaking changes before pulling a new major version.
Backing up Homebox means backing up that single data directory. Everything – the SQLite database, all uploaded photos, all attachments – lives there. A nightly copy to an offsite location or cloud storage is sufficient. If you are already running a NAS with scheduled backups, just make sure the Homebox data path is included in the backup job. Restoring is as simple as stopping the container, replacing the data directory contents, and restarting.
One practical detail that catches people off guard: Homebox does not currently export to a standard format like CSV out of the box in all versions, so your backup of the raw data directory is your primary recovery path. Before you have fifty items logged and photos attached, do a test restore – copy the data directory to a second machine, spin up a temporary Homebox container pointing at it, and confirm everything appears intact. Running that test once now is far less painful than discovering a backup gap after a disk failure.





