Skip to content

Thundernetes UI is a frontend for Thundernetes that allows you to visualize and interact with your game server clusters

License

Notifications You must be signed in to change notification settings

PlayFab/thundernetes-ui

Repository files navigation

Thundernetes UI

This project is a front end application to manage game servers running in one or more Thundernetes clusters. To be able to connect to them, be sure to deploy the GameServer API on each cluster.

Make sure to check the documentation on the Thundernetes website for more details!

How to use

How to config the app

The app needs a file called config.js with the endpoints to the GameServer API and to the Thundernetes manager (this is only to allocate game servers). Inside the file you need to define a variable called clusters with the following structure:

var clusters = {
  "cluster1": {
    "api": "http://{cluster1_api_IP}:5001/api/v1/",
    "allocate": "http://{cluster1_manager_IP}:5000/api/v1/allocate"
  },
  "cluster2": {
    "api": "http://{cluster2_api_IP}:5001/api/v1/",
    "allocate": "http://{cluster2_manager_IP}:5000/api/v1/allocate"
  }
}

How to run locally

If you want to run the project locally, first you need to install Node.js. Then clone the project:

git clone https://github.com/PlayFab/thundernetes-ui.git

And install the dependencies:

npm install

After this, you can create the config.js file inside the public folder, then you can simply run the app with the npm start command. This will start a server and open a browser to http://localhost:3000.

How to run using the Docker image

You can also run the Docker container image, all you have to do is mount a volume to pass your config.js file to the app, you can do this like this:

docker run -d -p 80:80 -v [path to your config.js]:/usr/share/nginx/html/config.js ghcr.io/playfab/thundernetes-ui:[current tag]

Features

Check all of your clusters in the same place

You can see a summary of what's going on in all your clusters.

Home page

Manage the builds on each cluster

Check the builds you have on each cluster and their current status. You can also create a new one, either from scratch, or by cloning one from any cluster!

Cluster view

Create build view

Manage each build

You can check each build separately and see it's status and specs, you can modify the standingBy and max values, allocate individual game servers for testing, and see a list of all the game servers running.

Build view - Specs

Build view - GameServers