Skip to content

Latest commit

 

History

History
96 lines (71 loc) · 2.3 KB

README.md

File metadata and controls

96 lines (71 loc) · 2.3 KB

HiveUI Metadata Ingestion

Ingestion frontend for the HIVE experiment at UKAEA

Docker

To run the UI with Docker, clone the repository and add Keycloak credentials to the docker-compose.yaml file:

AUTH_SECRET="<openssl rand -hex 32>"
AUTH_KEYCLOAK_ID="<KeycloakClientID>"
AUTH_KEYCLOAK_SECRET="<KeycloakClientSecret>"
AUTH_KEYCLOAK_ISSUER="http://<KeycloakURL>/realms/<realm name>"
PUBLIC_ROOT_FOLDER_LOCATION="<Full path to the root folder (no slash at end)>"
PUBLIC_METACAT_URL="<Full URL to Metacat>"
AIRFLOW_URL="<AirflowURL>"
AIRFLOW_DAG_ID="<DAGID>"
AIRFLOW_USERNAME="<AirflowUsername>"
AIRFLOW_PASSWORD="<AirflowPassword>"
PUBLIC_AIRFLOW_DIRECTORY="<AirflowDirectory>"
PUBLIC_AIRFLOW_INPUT_FILE="<AirflowInputFile>"

Then run the following command:

docker-compose up -d

The UI will be available at http://localhost:3000

Development - Prerequisites

Before you begin, ensure you have met the following requirements:

Developed with Node.js v21.1.0 and npm v10.2.0

Installing HiveUI

  1. Clone the repository:

    git clone https://github.com/BDevT/HiveUI.git
  2. Navigate to the project directory:

    cd HiveUI
  3. Install the dependencies:

    npm install
  4. Create a .env file in the root directory with the following content:

    AUTH_SECRET="<openssl rand -hex 32>"
    AUTH_KEYCLOAK_ID="<KeycloakClientID>"
    AUTH_KEYCLOAK_SECRET="<KeycloakClientSecret>"
    AUTH_KEYCLOAK_ISSUER="http://<KeycloakURL>/realms/<realm name>"
    PUBLIC_ROOT_FOLDER_LOCATION="<Full path to the root folder (no slash at end)>"
    PUBLIC_METACAT_URL="<Full URL to Metacat>"
    AIRFLOW_URL="<AirflowURL>"
    AIRFLOW_DAG_ID="<DAGID>"
    AIRFLOW_USERNAME="<AirflowUsername>"
    AIRFLOW_PASSWORD="<AirflowPassword>"
    PUBLIC_AIRFLOW_DIRECTORY="<AirflowDirectory>"
    PUBLIC_AIRFLOW_INPUT_FILE="<AirflowInputFile>"   

Running HiveUI (Development)

  1. Run a development server with npm:
    npm run dev -- --open

The UI will be available at http://localhost:5173

Running HiveUI (Production)

  1. Build with npm:
    npm run build
  2. Serve with npm:
    npm run preview

The UI will be available at http://localhost:4173