-
Notifications
You must be signed in to change notification settings - Fork 126
deployment
The main deployment tool used for My Thai Star is be Docker.
It is a tool to run application in isolated environments. Those isolated environments will be what we call Docker containers. For instance, it won’t be necessary any installation of Nginx or Apache tomcat or anything necessary to deploy, because there will be some containers that actually have those technologies inside.
Of course, it is necessary to have an external Deployment Server. Every Docker process will run in it. It will be accessed from Production Line pipelines via SSH. Thus, the pipeline itself will manage the scenario of, if every previous process like testing passes as OK, stop actual containers and create new ones.
This external server will be located in https://mts-devonfw-core.cloud.okteto.net/
3 Docker containers are being used for the deployment of My Thai Star:
-
Nginx for the Reverse Proxy
-
tomcat for the Java Server
-
Nginx for the Angular Client
The usage of the Reverse Proxy will allow the client to call via /api
every single Java Server’s REST operation. Moreover, there will only be 1 port in usage in the remote Docker host, the one mapped for the Reverse Proxy: 8080
.
Besides the deployment itself using Nginx and tomcat, both client and server are previously built using NodeJS and maven images. Artifacts produced by them will be pasted in servers' containers using multi-stage docker builds. It will all follow this schema:
This orchestration of all 3 containers will be done by using a docker-compose.yml
file. To redirect traffic from one container to another (i.e. reverse-proxy to angular client or angular client to java server) will be done by using, as host names, the service name docker-compose
defines for each of them, followed by the internally exposed port:
Note
|
A implementation using Traefik as reverse proxy instead of NGINX is also available. |
The steps to run My Thai Star are:
-
Clone the repository
$ git clone https://github.com/devonfw/my-thai-star.git
-
Run the docker compose command:
$ docker-compose up
-
-
Technical design
-
Data model
-
Server Side
-
Client Side
-
-
Security
-
Testing
-
Server Side
-
Client Side
-
End to end
-
-
UI design
-
CI/CD