bonaminandClaude Sonnet 5 751cac72ce fix(docker): move postgres data to a named volume, off the WSL2 bind mount
The ./data/postgres bind mount hit a WSL2/Docker Desktop bug where the
9p/virtiofs bridge reports normal postgres:postgres 0600 ownership but
the kernel still refuses the postgres user's own open() calls for
write — silent on read, fatal on any WAL write, which took the whole
database down after an unclean shutdown. Switches to a Docker-managed
named volume (bellsystems-postgres-data) that lives inside the WSL2
VM's own filesystem instead. The old bind-mounted data is left in
place at ./data/postgres/ as an untouched backup — that folder was
too wedged by the same bug to even rename, so it's abandoned rather
than deleted.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 18:36:28 +03:00
2026-02-25 21:29:56 +02:00
2026-06-16 12:15:25 +03:00
2026-02-16 19:57:22 +02:00

BellSystems Admin Panel

Self-hosted web admin panel for managing BellSystems devices, melodies, users, and MQTT communications.

Tech Stack

  • Backend: Python / FastAPI
  • Frontend: React + Tailwind CSS (Vite)
  • Database: Google Firestore (Firebase Admin SDK)
  • MQTT: Mosquitto (paho-mqtt)
  • Auth: JWT with role-based access control
  • Deployment: Docker Compose + Nginx

Getting Started

# Clone the repo
git clone <your-gitea-url>/bellsystems-admin.git
cd bellsystems-admin

# Copy env template and fill in your values
cp .env.example .env

# Place your Firebase service account key in the project root
# (file is gitignored — never commit it)

# Start everything
docker compose up --build

Project Structure

bellsystems-admin/
├── backend/          # FastAPI API server
├── frontend/         # React SPA
├── nginx/            # Reverse proxy config
├── docker-compose.yml
└── .env

Documentation

See BellSystems_AdminPanel_Strategy.md for the full architecture and build plan.

S
Description
BellSystems Contol Panel. Handles everything from Devices to Clients. Firebase / Mosquitto / Device Control / logging...
Readme
33 MiB
Languages
JavaScript 72.3%
Python 12.8%
HTML 12.4%
CSS 2.5%