Deploying Warracker
Introduction
Warracker is a self-hosted warranty tracking application that helps you manage and monitor warranties for all your products. Stop losing track of warranty expirations or scrambling to find purchase receipts when something breaks. Warracker centralizes all warranty information in one accessible location.
Built as a lightweight web application, Warracker provides an intuitive interface for adding products, tracking warranty periods, uploading receipts and documentation, and receiving notifications before warranties expire.
Key features of Warracker include:
- Product Management: Add products with warranty start and end dates
- Document Storage: Upload and store receipts, invoices, and warranty cards
- Expiration Tracking: Visual indicators for active, expiring soon, and expired warranties
- Category Organization: Group products by category for easy browsing
- Search and Filter: Quickly find products and warranties
- Expiration Alerts: Get notified before warranties expire
- Data Export: Export warranty data for backup purposes
- Mobile-Responsive: Access your warranty information from any device
This guide walks you through deploying Warracker on Klutch.sh using Docker with persistent storage for your warranty data and documents.
Prerequisites
Before deploying Warracker on Klutch.sh, ensure you have:
- A Klutch.sh account
- A GitHub account with a repository for your Warracker configuration
- Basic familiarity with Docker concepts
Repository Structure
Create a GitHub repository with the following structure:
warracker-deploy/├── Dockerfile└── .dockerignoreDockerfile
Create a Dockerfile in your repository:
FROM cassidyrose/warracker:latest
# Warracker web interface portEXPOSE 8000
# The base image handles the entrypointEnvironment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
TZ | No | UTC | Timezone for date calculations |
Deployment on Klutch.sh
- Push your Dockerfile to your GitHub repository.
- Log in to Klutch.sh and create a new project.
- Create a new app within your project and connect your GitHub repository containing the Dockerfile.
- Configure the deployment settings: - Select **HTTP** as the traffic type - Set the internal port to **8000**
- Add environment variables: - `TZ`: Your timezone (e.g., `America/New_York`)
- Attach persistent volumes: - Mount path: `/app/data` - Recommended size: 5 GB - Purpose: Database, uploaded documents, and receipts
- Click **Deploy** and wait for the build to complete.
- Access your Warracker instance at the provided URL and start adding your warranties.
Post-Deployment Configuration
After deployment:
- Access the web interface
- Create product categories (Electronics, Appliances, Tools, etc.)
- Add your first product with warranty information
- Upload receipts and warranty documentation
Troubleshooting
Uploaded Files Not Saved
Ensure the persistent volume is correctly mounted at /app/data. This stores both the database and uploaded files.
Timezone Issues
Set the TZ environment variable to ensure warranty dates display correctly in your local timezone.