Sign inSign up

officialreez/wol-manager-web

By officialreez

•Updated over 1 year ago

Flask based WOL Manager/WebApp https://github.com/ReezFX/WOL-Manager

Image
Networking
Internet of things
Web servers
0

1.2K

officialreez/wol-manager-web repository overview

WOL-Manager is a Flask-based web application designed to provide a user-friendly interface for managing and waking devices using the Wake-on-LAN (WOL) protocol. This application allows users to store host information, including MAC addresses, and remotely power on these devices over a network.

⁠Features

  • Host Management: Add, edit, view, and delete networked devices with MAC addresses
  • Wake-on-LAN: Send magic packets to wake devices remotely
  • User Authentication: Secure login system with session management (admin-managed user accounts)
  • Role-based Access Control: Different permission levels for users and administrators, with host visibility controls based on user roles
  • Logging: Track wake attempts and results for auditing purposes
  • Responsive UI: Web interface that works on desktop and mobile devices
  • Dark/Light Mode: Toggle between dark and light themes with automatic system preference detection
  • Docker Support: Easy deployment using containers

⁠System Requirements

  • Python 3.8 or higher (if installing manually)
  • Docker and Docker Compose (if using containerized deployment)
  • Network with support for broadcast UDP packets
  • Devices configured to support Wake-on-LAN

⁠Installation

The easiest way to run WOL-Manager is using Docker. You have two options:

⁠Option 1: Using Pre-built Docker Image (Quickest)

The official Docker image supports both arm64 and amd64 architectures.

  1. Pull the image from Docker Hub:

    docker pull officialreez/wol-manager-web:latest
    
  2. Run the container with proper environment variables:

    docker run -d --name wol-manager -p 8008:8080 -v wol_data:/app/instance -e FLASK_APP=wsgi.py -e FLASK_CONFIG=development -e FLASK_DEBUG=1 -e SECRET_KEY=dev-key-change-in-production --restart unless-stopped officialreez/wol-manager-web:latest
    

    Important Environment Variables:

    • FLASK_APP: Set to wsgi.py (default)
    • FLASK_CONFIG: Set to production for production deployments
    • SECRET_KEY: Required - Set a secure, unique key for session encryption (change this from the example!)
  3. Access the application at http://localhost:8008

⁠Option 2: Building from Source
  1. Clone the repository:

    git clone https://github.com/ReezFX/WOL-Manager.git
    cd WOL-Manager
    
  2. Start the application using Docker Compose:

    docker compose build
    docker compose up -d
    
  3. Access the application at http://localhost:8008

⁠Configuration

⁠Environment Variables

The application can be configured using the following environment variables:

  • FLASK_APP: Set to wsgi.py (default)
  • FLASK_ENV: Used in application factory to determine environment (development, testing, production)
  • FLASK_CONFIG: Configuration environment used in config.py (development, testing, production)
  • FLASK_DEBUG: Enable debug mode (1 for enabled, 0 for disabled)
  • SECRET_KEY: Secret key for session management (change this in production!)

Tag summary

Content type

Image

Digest

sha256:01ef3d310…

Size

80 MB

Last updated

over 1 year ago

docker pull officialreez/wol-manager-web