Need some advise around shipping applications. I am building an application that contains a NodeJS based web server, MongoDB database and Redis. I would like to build the application using Docker. But ship the docker image as a VMWare OVF file that can be deployed on a VMware ESX cluster.
I know that as per Docker best practices Microservices architecture, I should be deploying different images for different services such as MongoDB and Redis in my case.
So why do I want to ship it as an OVF? My target users need not know docker necessarily. The application should be easy to deploy for someone who do not have docker experience. With all services in a single VM makes it easy to troubleshoot issues. As in, all log files will be saved in the /var/log directory for different services and we can see status of all different services at once. Rather than the user having to look into each docker service.
How do I export a docker image as a VMware OVF/vAPP? Is this a bad approach? Is this not a right use case of docker? If not what is the right way to do it?