Skip to content

nooblk-98/lighthouse

Repository files navigation

Lighthouse logo

Lighthouse

A process for automating Docker container base image updates (alternative to watchtower).


Features

  • Real-time Container Monitoring - View live container stats and status
  • Manual & Auto Updates - Check/update containers and skip exclusions
  • Email Notifications - Optional SMTP alerts after updates
  • Multi-architecture Support - linux/amd64, linux/arm64, linux/arm/v7
  • Modern Web UI - React + Tailwind
  • RESTful API - Python backend
  • Docker Compose Ready - Quick setup with docker-compose

Quick Start

Prerequisites

  • Docker & Docker Compose (v3.8+)
  • Port 8066 (frontend) and 8000 (backend) available

Installation

Run using pre-built images

docker-compose -f docker-compose.production.yml up -d

Docker Compose (pre-built images)

Use docker-compose.production.yml to run the published images without building:

services:
  lighthouse:
    image: lahiru98s/lighthouse:latest
    container_name: lighthouse
    ports:
      - "8066:80"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./settings.json:/app/settings.json
    restart: always
    networks:
      - lighthouse-net

networks:
  lighthouse-net:
    driver: bridge

Using Pre-built Images

Instead of building locally, pull the published images:

# Docker Hub
docker pull lahiru98s/lighthouse:latest

# GitHub Container Registry
docker pull ghcr.io/nooblk-98/lighthouse:latest

Run with compose:

docker-compose -f docker-compose.production.yml up -d

Run FrontEnd with remote Backend For developement

$env:VITE_API_PROXY_TARGET="http://80.225.221.245:8000"; npm run dev

Dev with compose:

docker compose -f docker-compose.dev.yml up --build

UI Preview

Lighthouse UI preview 1

Lighthouse UI preview 2

Development

Run both services with Docker (recommended)

docker compose -f docker-compose.dev.yml up --build

Run locally without Docker

Backend

cd server
pip install -r requirements.txt
python main.py

Frontend

cd client
npm install
npm run dev

For a non-local backend, set VITE_API_PROXY_TARGET before running Vite:

$env:VITE_API_PROXY_TARGET="http://your-backend:8000"

Build images locally

docker-compose build

View logs

docker-compose logs -f backend
docker-compose logs -f frontend

Contributions welcome

TODO / Ideas

  • Create login page for UI
  • Support custom registry credentials
  • Improve scheduler UI: show detailed history and allow pause/resume.
  • Add image cleanup after updates (configurable retention).

About

A process for automating Docker container image updates ( alternative to watchtower with ui ).

Topics

Resources

License

Stars

Watchers

Forks

Packages