I have a setting that I would recommend:
- GIT source code, deployment scripts, and dock files
- Each web service has its own directory and comes with a docker file for containerizing it.
- The script line (shell script works for docker assembly) builds all docker containers from which all images are placed in the docker image repository
- A suitable deployment deploys all containers remotely to the VPS. (You use your own deployment routine that matches the meso / marathon)
- As part of the process, the active MQ agent is deployed in the cloud (yes, in the container). When deployed, it supplies each node with the broker's URL to which they must connect. In your setup, you could use ZooKeeper or etcd instead.
I also use jenkins to automatically restore and start deployments whenever a GIT has been committed, but they can also be done manually.
Reconstructions are growing rapidly, and deployments are not time consuming. I can replicate everything that I have in my repository indefinitely and have zero configuration.
To be able to perform a new deployment, all I need is a VPS set with docker daemons and some data stores for persistence. I'm not sure if this is something you can replace with a mesos, but it is possible that it can install a meso cloud for you on your equipment.
All logging is done using logstash on the central registration server.
source share