Sign inSign up

lerryv2/thinlinevault

By lerryv2

•Updated 25 days ago

Self-hosted firearm inventory with backups, login, and offline support

Image
0

776

lerryv2/thinlinevault repository overview

⁠ThinLineVault

Self-hosted firearm inventory for your home network. Track firearms, ammunition, reloading components (powder, primers, brass, projectiles, dies, shell holders), reloading recipes, accessories and documents, with photos. Every device on your network shares the same inventory.

  • Your server, your data: stored in one SQLite file in /data. Nothing is sent anywhere.
  • Works fully offline once the image is pulled (the optional update check is the only outside connection).
  • Optional login: set up in the browser on first visit (or skip it). The password is stored only as a salted hash.
  • Automatic daily backups to /backups, plus backups before every import and reset.
  • Export / Import of the whole inventory as one JSON file.
  • Update alerts: a banner when a newer version is published (can be turned off).

Prefer nothing to install? The online version runs in any browser at ThinLineVault.com⁠ (data stays in that browser). Backups move between the two with Export and Import.

Presented by ThinLineWeapons.com⁠.

⁠Quick start

Install it any way you like: Container Station, Portainer, Unraid, Synology, or plain Docker. The only port is 8080; map /data and /backups to folders if you want to see them on your network.

docker run -d --name thinlinevault --restart unless-stopped \
  -p 8090:8080 \
  -v "$(pwd)/data:/data" -v "$(pwd)/backups:/backups" \
  -e TZ=America/New_York \
  lerryv2/thinlinevault:latest

Then open http://<server-ip>:8090. The first visit shows a Welcome screen: set up a username and password, or skip it and have no login. You can turn a login on, change it or turn it off later from the Reports page.

Or with Docker Compose (docker compose up -d):

services:
  thinlinevault:
    image: lerryv2/thinlinevault:latest
    container_name: thinlinevault
    restart: unless-stopped
    ports:
      - "8090:8080"
    volumes:
      - ./data:/data
      - ./backups:/backups
    environment:
      - TZ=America/New_York

⁠Settings

VariableDefaultDescription
TZEtc/UTCTime zone, e.g. America/New_York
LOGIN_ENABLED(not set)Optional override: false = never a login, true = a login is required
VAULT_USERNAME / VAULT_PASSWORD_HASHOptional: set the login here instead of in the browser. Make the hash offline with docker run --rm -it lerryv2/thinlinevault hash-password
BACKUP_TIME02:00Daily backup time (24-hour)
BACKUP_KEEP30Daily backups to keep
UPDATE_CHECKtrueDaily check for a newer version (only version numbers are fetched). false = never contact the internet
MAX_UPLOAD_MB200Largest single save or import

⁠Volumes and port

PathContents
/dataThe database (vault.db) and login key. Back this up.
/backupsAutomatic backups. Each one restores with Import Data on the Reports page.

The site listens on port 8080 inside the container.

⁠Forgot the password

Run reset-password inside the container: in Container Station, open the container, click Execute and type reset-password; or run docker exec thinlinevault reset-password. The next visit shows the Welcome screen again. Your inventory isn't touched.

⁠Updating

docker compose pull
docker compose up -d

Platforms: linux/amd64, linux/arm64.

⁠License

Free to use and distribute. Modification, resale, or redistribution of modified versions is prohibited without express written permission from ThinLineWeapons.com. Any derivative works must provide attribution to the original author.

Tag summary

Content type

Image

Digest

sha256:00f543988…

Size

45.9 MB

Last updated

25 days ago

docker pull lerryv2/thinlinevault