Self-host Snipe-IT
updated Sep 2026deployed by usprices checked · Jul 2026Install verified on Ubuntu 26.04 · Sep 2026 · how we test
We earn commissions when you shop through the links below. Full disclosure →
An IT asset management system for tracking hardware, software licenses, accessories and consumables, and who each item is checked out to.
Key facts
CategoryInventory
LicenseAGPL-3.0
StackPHP, Laravel, MariaDB
Min RAM1024 MB
Official imageyes
Measured idle RAM156 MB
Difficulty
What you need
- Any VPS with at least 1024 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- Under an hour if you've used Docker before
Where to host itaffiliate disclosure
Hetzner Cloudrun it on
From $23.59/mo · 2 vCPU / 4 GB / 80 GB · EU + USKamaterafree trial
From $4/mo · 1 vCPU / 1 GB / 20 GB · US + EU + AsiaDigitalOceanalso works on
From $6/mo · 1 vCPU / 1 GB / 25 GB · US + EU + AsiaPaid link — we earn a commission if you shop through it.
Install
Run these commands on your server:
# Snipe-IT — the official docker-compose.yml + .env (app + MariaDB), per snipe-it.readme.io/docs/docker
mkdir snipeit && cd snipeit
curl -fsSL https://raw.githubusercontent.com/grokability/snipe-it/master/docker-compose.yml -o docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/grokability/snipe-it/master/.env.docker -o .env
# a fresh Laravel APP_KEY, the app URL, and new database passwords
sed -i "s|^APP_KEY=.*|APP_KEY=base64:$(openssl rand -base64 32)|; s|^APP_URL=.*|APP_URL=http://SERVER_IP:8000|; s|^DB_PASSWORD=.*|DB_PASSWORD=$(openssl rand -hex 16)|; s|^MYSQL_ROOT_PASSWORD=.*|MYSQL_ROOT_PASSWORD=$(openssl rand -hex 16)|" .env
docker compose up -d # → http://SERVER_IP:8000 (pre-flight check, then create the admin user)More self-hosted tools
Inventory
Grocy
PHPSlimSQLite
easyRead guide →
Inventory
Homebox
GoVueNuxtSQLite
easyRead guide →
Time tracking
Kimai
PHPSymfonyMySQL
easyRead guide →
Photo backup & gallery
Piwigo
PHPMySQL
easyRead guide →