Our website is currently live, hosted on an Azure kubernetes cluster. It can be found by following this link
Our tool is quite easy to use. Just follow the steps below:
Press on the link. You will then be shown a questionnaire
Fill in the questionnaire by choosing options in the drop down menu
Make sure to fill in the first question and the question about predicted grades
Press the submit button
Redirected to a table with courses that match the data you entered
Press on the check box next to the course name to see more details, and scroll down
To view the modules, press the word ‘modules’ on the course card at the bottom.
[optional] press the back button to go back to the questionnaire if you want to change your search criteria.
Deployment Manual
Write Dockerfile for both front end and back end. (Our defaults are provided in the source code)
Build the images
Create an azure container registry
Tag the images and push them on the registry
Create an azure kubernetes service, and integrate it with the container registry, using the
command.
"az aks update -n myAKSCluster -g myResourceGroup --attach-acr <acrName>"
Open the dashboard of the service.
Firstly, get credentials:
"az aks get-credentials -g myResourceGroup -n myAKSCluster"
Then, open the dashboard:
"az aks browse -g myResourceGroup -n myAKSCluster"
The dashboard looks like this:
To deploy our application, click the "create" button which locates at the right top of the dashboard. There are 3 ways to deploy, creating a yaml file, importing a yaml file, and generating a yaml file by specifying some deployment parameters. The way we chose was to specify deployment parameters. For the frontend, the app name is “frontend”, the container image is “frontandback.azurecr.io/testfrontend:latest”, the pods number is 1 and services is “external 8080:3000”. For the backend, the app name is “backend”, the container images is "frontandback.azurecr.io/testbackend:latest", the pods number is 2, and the services is "external 80:80".
The last step is clicking the "deploy" button.
Our kubernetes cluster costs around 40 pounds per month to host on Azure. We are currently using one of the cheaper clusters: the D1_v2 cluster, which has one CPU and 3.5 GiB of ram. The higher performance clusters can be much more expensive.