Some questions on containerising any application ...
# random
r
Some questions on containerising any application Suppose I've spring boot application that uses multiple technology like postgres, Neo4j, RabbitMQ etc. I want to understand following things 1. Do we have to turn every thing (spring boot app itself, postgres etc) into container image for better performance? Or only containerising app itself is fine? 2. If we containerise everything, can we deploy all containerised apps on single node? Or we should use different node? 3. Using kubernetes for monolith spring boot app (one person project) is good ? Or I should avoid it?
t
Hi @rajesh, generally speaking the Postgres, Neo4j and RabbitMQ should be deployed independently. You don’t want to have a single Pod containing all dependencies of your service. The Spring Boot app should run in a pod, while e.g. the postgres has it’s very own pod as well.
Kubernetes is primarily for komplex Cloud scenarios. So it might make sense to use a VM (e.g. on GCP) to run you app and then using the services of the Cloud provider to spin off a Postgres and your other services.
r
Thank you @Timo Gruen. I was also thinking about deploying app on vm (as OS service)
c
Some cloud services can run your Spring.Boot app directly with all backing services coming from cloud provider. AWS Beanstalk or Azure for Spring Boot.