LubeLogger – Self-Hosted Maintenance Logging for Your Vehicles
If you’re a vehicle enthusiast or a meticulous DIYer, keeping track of oil changes, tire rotations, and regular maintenance tasks can be overwhelming – unless you’ve got the right tool. Meet LubeLogger, a self-hosted web application built to help you easily log and track maintenance tasks for all your vehicles.
🚗 What is LubeLogger?
LubeLogger is a modern, lightweight, self-hosted maintenance logging tool designed to help you keep detailed records of your vehicle servicing history. It’s perfect for personal use – whether you maintain one car or an entire fleet of bikes, trucks, or tractors.
No more messy spreadsheets, forgotten oil changes, or misplaced notes – LubeLogger keeps everything organized and easily accessible.
🌐 Features
- ✅ Web-based interface – no desktop software needed
- ✅ Supports multiple vehicles
- ✅ Tracks services like oil changes, tire rotations, brake jobs, and more
- ✅ Filter and sort maintenance logs
- ✅ Mobile-friendly
- ✅ Works great with SQLite or PostgreSQL
- ✅ Easy Docker deployment
🚀 How to Deploy LubeLogger with Docker
Setting up LubeLogger is simple thanks to its Docker support. Here’s a quick guide to getting it running:
1. Create a docker-compose.yml file:
services:
app:
image: ghcr.io/hargata/lubelogger:latest
restart: unless-stopped
ports:
- 8080:8080
volumes:
- data:/App/data
- keys:/root/.aspnet/DataProtection-Keys
env_file:
- .env
volumes:
data:
keys:
This setup uses SQLite, so there’s no need to manage a separate database – everything is stored locally in the data volume.
Want PostgreSQL instead? Scroll down to the PostgreSQL section below.
2. Add environment variables in a .env file (optional):
This is optional if you’re using the default SQLite database. But if you’d like to set your own configuration, here’s a basic example:
# Example .env
ASPNETCORE_ENVIRONMENT=Production
Logging__LogLevel__Default=Information
3. Start the application:
docker-compose up -d
Once the container is up and running, open your browser and go to:
http://localhost:8080
You should see the LubeLogger dashboard.
🗃️ Optional: Use PostgreSQL
If you prefer a more robust database for multiple users or production setups, add PostgreSQL to your Docker Compose:
services:
app:
image: ghcr.io/hargata/lubelogger:latest
restart: unless-stopped
depends_on:
- db
ports:
- 8080:8080
environment:
- ConnectionStrings__DefaultConnection=Host=db;Port=5432;Database=lubelogger;Username=postgres;Password=yourpassword
volumes:
- data:/App/data
- keys:/root/.aspnet/DataProtection-Keys
db:
image: postgres:15
restart: unless-stopped
environment:
POSTGRES_DB: lubelogger
POSTGRES_USER: postgres
POSTGRES_PASSWORD: yourpassword
volumes:
- pgdata:/var/lib/postgresql/data
volumes:
data:
keys:
pgdata:
Replace yourpassword with something secure. LubeLogger will auto-migrate the database schema when it connects.
📦 Data Persistence
LubeLogger stores vehicle data inside the /App/data folder. This is mounted via Docker volumes to ensure your data persists even if the container is restarted or rebuilt.
💡 Final Thoughts
LubeLogger is an elegant and efficient solution for anyone who wants to self-host their own vehicle maintenance log. It’s simple enough for casual users, yet powerful enough for gearheads or small fleet owners.
If you love the control and simplicity of self-hosted tools, give LubeLogger a spin.
🧩 GitHub Repository:
https://github.com/hargata/lubelog
✉️ Built and maintained by @hargata



Post Comment