ezgg-lan-manager/README.md
David Rodenkirchen dd2ec79d1f rename lan
2025-07-26 12:23:26 +00:00

1.9 KiB

EZGG LAN Manager

Overview

This repository contains the code for the EZGG LAN Manager.

Development Setup

Prerequisites

  • Working Installation of MySQL 5 or latest MariaDB Server (mariadb-server for Debian-based Linux, XAMPP for Windows)
  • Python 3.9 or higher
  • PyCharm or similar IDE (optional)

Step 1: Preparing Database

To prepare the database, apply the SQL file located in sql/create_database.sql to your database server. This is easily accomplished with the MYSQL Workbench, but it can be also done by pipeing the file into the mariadb-server executable.

Optionally, you can now execute the script create_demo_database_content.py, found in src/ezgg_lan_manager/helpers. Be aware that it can be buggy sometimes, especially if you overwrite existing data.

Step 2: Preparing configuration

Use the example configuration at config/config.example.toml to create a config.toml at the base of the repository. Most of the parameters do not matter to get the development setup done, but the database credentials need to be correct.

Step 3: Install dependecies

Use pip install -r requirements.txt to install the requirements. The usage of a venv is recommended.

Step 4: Running the application

Run the application by executing the file EzggLanManager.py found at src/ezgg_lan_manager. Check the STDOUT for information regarding the port on which the application is now served.

Docker Deployment

To get the docker compose setup running, you need to manually complete the following steps:

  1. Create a valid config.toml in the project root, so it gets copied over into the container.
  2. Create the database user:
CREATE USER 'ezgg_lan_manager'@'%' IDENTIFIED BY 'PASSWORD';
GRANT ALL PRIVILEGES ON ezgg_lan_manager.* TO 'ezgg_lan_manager'@'%';
FLUSH PRIVILEGES;
  1. Make sure to NOT use the default passwords!
  2. Apply the create_database.sql when starting the MariaDB container for the first time.