You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# GameOn! Java microservices deployment on Kubernetes Cluster
3
+
# GameOn! Java Microservices deployment on Kubernetes Cluster
4
4
5
-
This project demonstrates deployment of a Microservices based application Game On! on to Kubernetes cluster service from Bluemix. Game On! is a throwback text-based adventure built to help you explore microservice architectures and related concepts. GameOn! users start by creating a simple room, the building block of any adventure game. With the tutorials available at the [GameOn! website](https://book.gameontext.org), a user can create in text a simple room in any one of various languages in just a few minutes.
5
+
This project demonstrates deployment of a Microservices based application Game On! on to Kubernetes cluster. Game On! is a throwback text-based adventure built to help you explore microservice architectures and related concepts. GameOn! users start by creating a simple room, the building block of any adventure game. A user can create in text a simple room in any one of various languages in just a few minutes.
6
6
7
-
There are several microservices used in this app ranging from **couchdb, redis, to frontend tier services**. Everything would be hosted on a Kubernetes Cluster where you can access your own GameOn app from anywhere.
7
+
There are several microservices used in this app
8
+
9
+
Core MicroServices:
10
+
11
+
Proxy: HAProxy based, and is responsible for surfacing the collection of APIs as a single facade for the entire application.
12
+
WebApp: Webapp is a simple nginx process that serves the static files that comprise the front-end of the UI.
13
+
Player: Players, are represented by the player Java microservice service, which provides a public API for CRUD operations, and for managing API tokens.
14
+
Auth: Java microservice to allow players to connect and identify themselves via a selected "social login"
15
+
Mediator: The Mediator service is implemented in Java using WebSphere Liberty, and connects players to rooms over Websockets
16
+
Map: The Map service is a Java EE application running on WebSphere Liberty that provides a public REST API using JAX-RS. It stores data in a NoSQL data store, either couchdb or Cloudant
17
+
Room:
18
+
19
+
Platform Services:
20
+
Amalgam8: Amalgam8 supplies Registry, and a Controller, via which it implements the Service Discovery, and Service Proxying
21
+
Kafka: Publish/Subscribe solution used by Amalgam8
22
+
23
+
Everything would be hosted on a Kubernetes Cluster where you can access your own GameOn app from anywhere.
8
24
9
25

10
26
@@ -22,16 +38,15 @@ If you want to deploy GameOn! directly to Bluemix, click on 'Deploy to Bluemix'
22
38
Please follow the [Toolchain instructions](https://github.com/IBM/container-journey-template/blob/master/Toolchain_Instructions.md) to complete your toolchain and pipeline.
23
39
24
40
## Steps
25
-
1.[Modify the yaml files](#1-modify-the-yaml-files)
26
-
2.[Create Volumes in your Cluster](#2-create-volumes-in-your-cluster)
41
+
1.[Modify the Core services yaml files](#1-modify-the-core-services-yaml-files)
42
+
2.[Create volumes in your Cluster](#2-create-volumes-in-your-cluster)
27
43
3.[Create the Platform Services](#3-create-the-platform-services)
28
44
4.[Create the Core Services](#4-create-the-core-services)
29
45
5.[Explore your GameOn App](#5-explore-your-gameon-app)
46
+
- 5.1 [Add Social Logins](#51-add-social-logins)
47
+
- 5.2 [Add Rooms](#52-add-rooms)
30
48
31
-
A. [Adding Social Logins](#a-adding-social-logins)
32
-
B. [Adding Rooms](#b-adding-rooms)
33
-
34
-
# 1. Modify the yaml files
49
+
# 1. Modify the Core services yaml files
35
50
First, you'll need to update the yaml files for the **core services** and **setup.yaml**.
36
51
You will need to get the Public IP address of your cluster.
37
52
```bash
@@ -169,7 +184,7 @@ Now that you have successfully deployed your own app in the Bluemix Kubernetes C
169
184

170
185
***Congratulations! You now have your own GameOn app running on Bluemix! You may now wish to explore on creating new rooms and adding social logins.**
171
186
172
-
# A. Adding Social Logins
187
+
# 5.2 Add Social Logins
173
188
You may want to add social logins so you and your friends can explore the rooms together.
174
189
To add social logins you would need to have developer accounts on the social app you want to use.
175
190
@@ -222,7 +237,7 @@ You will need to add this in the environment variables on the yaml files of your
222
237
```
223
238
> The application uses the keys(name) **TWITTER_CONSUMER_KEY** and **TWITTER_CONSUMER_SECRET** and must exactly match these in the core yaml files.
224
239
225
-
# B. Adding Rooms
240
+
# 5.1 Add Rooms
226
241
227
242
You can build your own rooms by following [**this guide**](https://gameontext.gitbooks.io/gameon-gitbook/content/walkthroughs/createRoom.html) by the GameOn team. They have some sample rooms written in Java, Swift, Go, and more.
0 commit comments