How to install EdMon on Ubuntu Server

EdMon is a monitoring tool designed for education systems. It helps in keeping track of students and staff details. Here's a step-by-step guide to help you install EdMon on Ubuntu Server.

Step 1: Install the dependencies

Open the terminal on your Ubuntu server and run the following command to install the necessary dependencies:

sudo apt-get update
sudo apt-get install -y git libpq-dev python3-dev python3-pip postgresql postgresql-contrib

The command will update the Ubuntu package list and install a few dependencies needed for EdMon.

Step 2: Clone EdMon repository

Navigate to the directory where you want to keep the EdMon files.

cd ~
mkdir edmon
cd edmon

Now clone the EdMon repository from GitHub using the following command:

git clone https://github.com/Edraens/EdMon.git

This command will create a folder called EdMon in your current directory with all the necessary files.

Step 3: Create a PostgreSQL database

Next, create a new PostgreSQL database, a database user, and grant privileges.

sudo -u postgres createuser edmonuser
sudo -u postgres createdb edmondb
sudo -u postgres psql

This command opens the PostgreSQL command prompt. Here, you need to grant privileges to the edmonuser on the edmondb:

GRANT ALL PRIVILEGES ON DATABASE edmondb TO edmonuser;

Exit the PostgreSQL command prompt by typing \q and pressing ENTER.

Step 4: Setup virtual environment

Go to the EdMon directory using cd command that you cloned in Step 2.

cd EdMon

Create a virtual environment by running the following command:

python3 -m venv venv

Now activate the virtual environment:

source venv/bin/activate

Step 5: Install requirements

Use pip package manager to install the required python packages.

pip3 install -r requirements.txt

Step 6: Modify configuration files

Copy the .env.example file to a new file called .env.

cp .env.example .env

Open the .env file using a text editor:

nano .env

Here, we need to set the following fields:

Set the DATABASE_URL field to the following value:

postgresql://edmonuser:password@localhost/edmondb

Replace edmonuser with the database user created in Step 3 and password with the password you want to set for that user.

Next, set the SECRET_KEY field to any random string of your choice.

Save and close the file.

Step 7: Set up database

Run the following command to migrate the database schema:

flask db upgrade

Now, run the following command to populate the database with initial data:

flask import init.sql go

Step 8: Run the server

Finally, run the server using the following command:

flask run

That's it. You can now navigate to http://localhost:5000 in your web browser to access EdMon.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!