Why a Spreadsheet Is Not Enough
Most people do not know what they own. That sounds absurd until you try to file a home insurance claim, move across the country, or explain to a repair shop what model your appliance is. A mental inventory works fine when you have a studio apartment and three pieces of furniture. It falls apart the moment you accumulate a garage, a basement, two kids, and a decade of electronics purchases you have mostly forgotten about.
Homebox is a free, open-source home inventory application you can run on your own hardware. It stores your items, their locations, labels, purchase records, and warranty expiration dates – all in one searchable interface. No subscription, no cloud company holding your data, no storage limits tied to a pricing tier. If you already run a home server or a Raspberry Pi, Homebox slots in cleanly alongside other self-hosted tools.

What You Need Before You Start
The setup is lightweight. Homebox runs as a single Docker container and uses SQLite as its database, so you do not need a separate database server, complex orchestration, or significant RAM. A machine running Docker is the only hard requirement. That could be a Raspberry Pi 4, an old laptop running Ubuntu, a NAS device with Docker support, or a proper home server. The official image works on both x86 and ARM architectures, so your hardware options are wide.
You should have Docker and Docker Compose installed before starting. If your host machine is running Ubuntu or Debian, both install cleanly via the official Docker documentation in under ten minutes. On a Synology or QNAP NAS, Docker support is typically available through the device’s package manager. Make sure port 3100 is available on your host, or choose a different port if something else is already listening there – you will map it during setup.
Create a directory on your host to hold Homebox data. Something like /opt/homebox/data works well. This directory will persist your SQLite database and uploaded images even if you recreate or update the container. Without a persistent volume mapped here, you will lose all your inventory data every time the container restarts.
Installing Homebox with Docker Compose
Create a file called docker-compose.yml in your chosen directory and add the following configuration:
services:
homebox:
image: ghcr.io/sysadminsmedia/homebox:latest
container_name: homebox
restart: unless-stopped
environment:
– HBOX_LOG_LEVEL=info
– HBOX_LOG_FORMAT=text
– HBOX_WEB_MAX_UPLOAD_SIZE=10
volumes:
– ./data:/data
ports:
– “3100:7745”
Save the file, then run docker compose up -d from the same directory. Docker will pull the image and start the container in detached mode. Within a few seconds, Homebox will be accessible at http://your-server-ip:3100. On your first visit, you will be prompted to create an account. This initial account becomes the admin for your Homebox instance.

Setting Up Your Inventory Structure
Homebox organizes everything through three concepts: locations, labels, and items. Locations are physical places – rooms, storage units, boxes, shelves. Labels work as tags you can attach across multiple items to group them by type, warranty status, loan status, or any category you want. Items are the individual things you own, each of which lives in one location and can carry multiple labels.
Start by building out your locations before you add any items. Go to Locations in the sidebar and create your top-level spaces first – Living Room, Kitchen, Garage, Basement, Storage Unit. Homebox supports nested locations, so you can then create sub-locations like Garage – Top Shelf or Kitchen – Junk Drawer. Getting this hierarchy right before you start importing items saves significant reorganization time later. Think about how granular you actually need to be. For most households, room-level locations with a handful of sub-locations per room is enough.
Labels come next. Some practical ones to create from the start: Electronics, Warranty Active, Insured, Loaned Out, Needs Repair. You can always add more as you go, but having a base set ready means you will apply them consistently as you enter items. Labels in Homebox are searchable and filterable, so the more thoughtfully you apply them, the more useful your inventory becomes during a search.
When you add an item, Homebox gives you fields for purchase price, purchase date, serial number, model number, manufacturer, and warranty expiration. You can also attach files – receipts, manuals, photos of the actual item. Fill in as much of this as you reasonably can for high-value items. For a kitchen blender, a serial number and warranty date is probably enough. For an expensive camera body or a major appliance, attach the purchase receipt and a photo. If you ever need to file an insurance claim, having that documentation inside your inventory rather than scattered across email folders is worth the upfront effort.
Homebox also tracks maintenance schedules and lets you log service history against items. If you service your HVAC unit, replace a water filter, or have a repair done on an appliance, you can log that event against the item with a date and notes. Over time, this builds a maintenance record that is genuinely useful when you sell a home or a vehicle, when a warranty dispute comes up, or when you are just trying to remember when you last replaced the furnace filter.

Making It Accessible and Keeping It Secure
Running Homebox only on your local network is fine for most people, but if you want access from outside your home, you have a few options. The cleanest approach for most self-hosters is putting Homebox behind a reverse proxy like Nginx Proxy Manager or Caddy and exposing it through a domain name with HTTPS. If you already run something like a self-hosted system dashboard, you likely have a reverse proxy already configured – adding Homebox as an additional service takes a few minutes.
Do not expose Homebox directly to the internet without HTTPS. The login credentials travel over the network, and an unencrypted connection to an inventory of everything you own – including serial numbers and purchase prices – is a bad combination. If a full reverse proxy setup feels like too much overhead right now, a VPN like Tailscale is a simpler path to secure remote access. Install the Tailscale client on your server and on your phone, and Homebox becomes reachable over your private Tailscale network from anywhere without opening any ports on your router.
Backing up Homebox means backing up two things: the SQLite database file and the uploaded files directory, both of which live inside the ./data folder you created. You can automate this with a cron job that copies the data directory to a different drive or an offsite location on a daily schedule. Because SQLite is a single file, the backup process is simpler than it would be with a full database server. The real risk is not losing the application – pulling the Docker image again takes seconds – it is losing the data you spent time entering. That data folder is the only thing that matters.
Homebox does not currently support multiple users with separate inventories on the same instance, which makes it better suited to a single household than a shared situation. What it does support is shared access within a household through the same account, which is practical enough for most use cases. The bigger question most people hit after a few weeks of use is not technical – it is how thorough to be. Cataloguing every item you own is a long project, and the temptation is to stop halfway through, leaving you with a partial inventory that is accurate enough to be misleading. A more sustainable approach is to catalog by location in focused sessions, completing one room before moving to the next, and treating new purchases as an ongoing habit rather than a catch-up project.
Frequently Asked Questions
Does Homebox require a separate database like MySQL or PostgreSQL?
No. Homebox uses SQLite, which is a single file stored in your data directory. No external database server is needed.
Can I access Homebox from outside my home network?
Yes. The recommended approach is to use a reverse proxy with HTTPS or a VPN like Tailscale to access it securely from anywhere.





