RDBMS storing
-
Authentication info
-
Authorization info
-
Vehicle info
Homepage |
|
Docker |
postgres:10-alpine |
Exposed port |
5432 |
Consul for service discovery and configuration
Homepage |
|
Docker |
consul:0.9.3 |
Exposed port |
8500 |
Traefik for HTTP reverse proxy and load balancer
Homepage |
||
Docker |
/gateway |
|
Exposed ports |
80 |
Gateway using HTTP |
43 |
Gateway using HTTPS |
|
8080 |
Traefik management UI |
Based on OAuth2 implemented by Spring Security OAuth2. More
OAuth server for user, provide oauth access token for authorization.
Provide APIs for user administration.
-
Base path: /api
-
Endpoints
Endpoint | Description |
---|---|
GET /users |
List of all managed user. |
GET /users/authorities |
List of all authorities |
GET /users/:userid |
Get an user with id. |
POST /users |
Add an new user. |
PUT /users/:userid |
Update an user. |
DELETE /users/:userid |
Delete a registered user. |
Provide APIs for vehicle administration.
-
Base path: /vehicle/admin
-
Endpoints
Endpoint | Description |
---|---|
/list |
List of all managed vehicles. |
/get/:clientid |
Get vehicle by client id. |
Provide APIs for listening event message of vehicle
-
Base path: /vehicle/message
-
Endpoints
Endpoint | Description |
---|---|
/save |
Save a vehicle message on the server. |
/events/save |
Save a batch of vehicle events on the server. |
/events/list |
List the recent events of a vehicle. |
/events/list.json |
List the recent events of a vehicle as json |
UI for monitoring and managing vehicles. More
You can connect and pull built images of services from https://10.0.0.7
Add docker\trillium.crt
to Trusted Root CA to allow connection to registry server.
Module |
Path |
Description |
Kubernetes |
/kubernetes |
Unused deploy automation |
TCPI Bridge |
/tcp-bridge |
Bridge between TCP & HTTP |
EnOcean |
/enocean |
Java proxy of native library ENOcean for energy harvesting wireless technology. (?) |
Philips Hue |
/philipshue |
Module based on Philips Hue SDK for interacting with the hue system (?) |
IoT Hub |
/hub |
Integrate with other IoT solution. For now it’s ENOcean & Philips Hue. |
Module |
Path |
Description |
Zuul |
/zuul |
API Gateway by Spring Cloud Netflix Zuul |
Eureka |
/eureka |
Service discovery by Spring Cloud Netflix Eureka |
Old backend server |
/server |
Old, unused API for spring backend |
Old car API |
/api |
Old, unused API for car |
-
The project is managed by Gradle. All build, run, publish,… tasks are already defined by Dominik-san. Should works without problems.
-
Other resources in the projects are:
Path | Summary |
---|---|
/gradle |
Gradle build tool wrapper |
/run-scripts |
Script to run application automatically. |
/docs |
Only draft design, graphs, charts for now. |