Skip to content

AnsonDev42/uptime-monitor

Repository files navigation

uptime-monitor

Docker Image CI Pytest CI

This repo is the back-end implementation of the following project.

Demo

Click here to see for yourself

image image


Running / Building PART1/2 (for front-end)

Installing Bun (the front-end package manager): https://bun.sh/

  • Install dependencies(only need to run once) : bun install
  • Run for development: bun run dev
  • Build for production: bun build

Fork frontend and you can easily deploy it for free in Cloudflare Page, Vercel and etc.


Running / Building PART2/2 Method1 RECOMMENDED (for backend-end)

Installing Docker and Docker-compose

  • modify your configration in docker-compose.yml file if needed
  • copy the .env.dev to .env, modify in .env
  • docker-compose up

Running / Building PART2/2: Method2 (for backend-end)

Installing peotry (the back-end package manager for python):

  • copy the .env.dev to .env, modify in .env
  • Install dependencies(only need to run once) : poetry install
  • Install and run both postgresDB and rabbitMQ
  • In one shell to run Django Server: ./manage.py runserver
  • In another new shell to run celery server: celery -A uptimemonitor worker --loglevel=INFO
  • In another new shell to run celery-beat: celery -A uptimemonitor beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler

Objectives:

Scope:

  • support system services (smb, shairport)
  • docker container monitoring
  • database(postgres) monitoring
  • periodic checks
  • notification via email, bark, telegram
  • web dashboard

System Design:

system-design.svg

(oversimplified) Database Schema

database-design.svg

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published