* Backend in Kotlin + Spring Boot 3, frontend in Typescript + Vue 3
* It is deployed on RAMA in Docker containers
* RAMA runs VISNA's `staging`, `sandbox` and `production` environments
@@ 119,7 119,7 @@
* The public URL is https://visna.isn.edu.au, which reaches GANESHA
* A Nginx instance running on GANESHA routes requests to the correct port on RAMA
* It is deployed by simply pushing the branches `production`, `sandbox` and `staging`
-
* THRIVE, a course generation app for staff:
+
* **THRIVE**, a course generation app for staff:
* Backend in Typescript + Express 4, frontend in Typescript + React 19
* It is deployed on RAMA in Docker containers
* RAMA runs THRIVE's `staging`, `sandbox` and `production` environments
@@ 130,7 130,7 @@
* The public URL is https://thrive.isn.edu.au, which reaches GANESHA
* A Nginx instance running on GANESHA routes requests to the correct port on RAMA
* It is deployed by simply pushing the branches `production`, `sandbox` and `staging`
-
* Modelix, an AI gateway app used behind the scenes by THRIVE and soon by VISNA
+
* **Modelix**, an AI gateway app used behind the scenes by THRIVE and soon by VISNA
* Backend in Rust + Axum + Tower, frontend in Typescript + Vue 3
* It is deployed on GANESHA, in a Docker container
* The deployment is configured together with all the other services running on GANESHA (see below)
@@ 142,23 142,23 @@
* Deployment on GANESHA is done via git pull ganesha main && docker-compose pull modelix && docker-compose up -d --force-recreate modelix-caddy
-
## Internal Services
+
## Services
GANESHA runs a host of services:
* The services are set up using a long Docker Compose stack defined at [https://gitea.dev.isn.edu.au/ISN-Innovations/Infrastructure-Setup](https://gitea.dev.isn.edu.au/ISN-Innovations/Infrastructure-Setup)
* This lives on GANESHA in `/Users/mtamassia/Projects/Infrastructure-Setup`
* The folder containes a .env file, too
* GANESHA uses Docker Compose v1, so the right commands start with `docker-compose` (with a dash)
* Among the services, there are:
-
* Grafana and Kibana, which I use to monitor VISNA and THRIVE.
-
* Gitea, where we host all of our code, is reachable at https://gitea.dev.isn.edu.au
-
* Keycloak, which THRIVE and Modelix use for authorisation and identity management, and is reachable at https://iam.isn.edu.au
-
* Garage, which offers a S3-compatible API, which THRIVE uses to store assets, and is reachable at https://s3.isn.edu.au
-
* Otterwiki, where we collect our knowledge, is reachable at https://wiki.dev.isn.edu.au
-
* Prometheus and Elasticsearch, where the data used by Grafana and Kibana transits
-
* Various other utilities, which we ourseleves use, such as NextCloud, Infisical, Homarr, Portainer.
-
* Nginx, which is used to route requests to VISNA, THRIVE (on RAMA) but also to Keycloak and Garage
-
* Modelix, our AI gateway, is reachable at https://ai.isn.edu.au
-
* Open WebUI, an AI chat app, is reachable at https://chat.staff.isn.edu.au
+
* **Grafana** and **Kibana**, which I use to monitor VISNA and THRIVE.
+
* **Gitea**, where we host all of our code, is reachable at [https://gitea.dev.isn.edu.au](https://gitea.dev.isn.edu.au)
+
* **Keycloak**, which THRIVE and Modelix use for authorisation and identity management, and is reachable at [https://iam.isn.edu.au](https://iam.isn.edu.au)
+
* **Garage**, which offers a S3-compatible API, which THRIVE uses to store assets, and is reachable at [https://s3.isn.edu.au](https://s3.isn.edu.au)
+
* **Otterwiki**, where we collect our knowledge, is reachable at [https://wiki.dev.isn.edu.au](https://wiki.dev.isn.edu.au)
+
* **Prometheus** and **Elasticsearch**, where the data used by Grafana and Kibana transits
+
* Various other utilities, which we ourseleves use, such as **NextCloud**, **Infisical**, **Homarr**, **Portainer**.
+
* **Nginx**, which is used to route requests to VISNA, THRIVE (on RAMA) but also to Keycloak and Garage
+
* **Modelix**, our AI gateway, is reachable at [https://ai.isn.edu.au](https://ai.isn.edu.au)
+
* **Open WebUI**, an AI chat app, is reachable at [https://chat.staff.isn.edu.au](https://chat.staff.isn.edu.au)