-
Install Microk8s based on the official documents.
-
Enable the following addons
$ microk8s enable dashboard
$ microk8s enable dns
$ microk8s enable storage
$ microk8s enable registry
$ microk8s enable istio
-
Enable Istio Sidecar for namespaces. I.e.:
$ kubectl label namespace default istio-injection=enabled
-
Install ArgoCD
-
Following ArgoCD installation guidelines to install ArgoCD.
-
-
Controller Based REST
-
Functional Endpoint REACTIVE REST
-
Functional Endpoint COROUTINE
-
R2DBC
-
PostgreSQL
$ ./gradlew bootBuildImage --imageName=hrservice:latest
$ docker push 192.168.64.3:32000/hrservice:latest
Note
|
Microk8s Local Registry
|
Note
|
If Deployed in Kubernetes
|
Note
|
See the code for samples
Both functional endpoints and controllers. |
-
Add the Springdoc dependency.
-
Configure Springdoc Swagger 3.0 in application.yml.
-
Optional: create bean OpenAPI as done in OpenApiConfig.
-
Use org.springdoc.webflux.core.fn.SpringdocRouteBuilder.route to configure RouterFounction endpoints. See example RouteOpenAPISpringdoc.
-
Also found similar data in GitHub.