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!
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"
}
}
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
.
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]
You can see a summary of what's going on in all your clusters.
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!
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.