Skip to content

TACC/utrc-dashboard

Repository files navigation

This application pulls user and system allocation/usage data from the Texas Advanced Computing Center (TACC) Allocation System (TAS) database. Data is retrieved in monthly .xlsl files. Then, using the Pandas and Plotly Dash external Python libraries, an Nginx web server, and a TACC-partitioned VM, it creates a visual, interactive data dashboard with filters, charts, and graphs.

The application serves a dashboard that displays overall trends to all visitors, and shows sensitive user data only to visitors who are logged in.

The app is currently hosted here.

Installation Instructions

  1. On your VM, pull the application files from the GitHub repository.

    git clone [email protected]:TACC/utrc-dashboard.git
    
  2. In ./assets/data/monthly_reports, add all monthly reports. Reports should follow the following naming convention: utrc_report_YYYY-MM-DD_to_YYYY-MM-DD.xlsx (e.g. utrc_report_2019-12-01_to_2020-01-01.xlsx).

  3. In the root directory, add a .env file with the values SECRET_KEY and ACCOUNTS. SECRET_KEY should be a securely generated string. ACCOUNTS should contain a single json dictionary with usernames as keys and passwords as values. See .env.sample for an example.

  4. Open config.py and confirm the value for settings["DEBUG_MODE"]. If you are setting up a development environment this should be set to True. This will enable hot reloading and caching in your development environment. If you are setting up a production environment settings["DEBUG_MODE"] should be set to None.

  5. If you are setting up a production environment, set up the Nginx web server configuration file to reverse proxy at port 8050.

    # /etc/nginx/sites-available/dashboard.conf
    server {
            listen 80;
            listen [::]:80;
    
            # Change to domain name
            server_name 129.114.38.28;
    
            location / {
                    proxy_pass http://localhost:8050;
            }
    }
    
  6. Start the application. For a production environment use:

    docker compose up --build -d
    

    For a development environment, use the docker-compose-dev.yaml file so you do not have to restart the container to see changes:

    docker compose -f docker-compose-dev.yaml up --build
    

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages