简体   繁体   中英

Designing system architecture with Docker containers

I am new to Docker. I want some opinion from some expert about container design. I have set up a database in the MongoDB cloud (Atlas) . I have Windows app in Docker container which include Windows OS and application based components. I want to use RavenDB and this database is very new to me. A component of my Windows container will communicate to both MongoDB and RavenDB . My question is should I create different docker container for RavenDB or will I install RavenDB in my existing windows container. it is design decision problem. I am new to RavenDB and Docker so the pros and cons are not clear to me yet. Kindly help me.

I had a similar application, where I had a postgresql db and Nodejs webapp. The web application and the database were running on separate docker containers.

  • This way the two containers were independent of each other.
  • This replicates the actual production scenario, where you'll have your service and database running separately.
  • It is recommended to run single process on each container.
  • Better modularity of the services. Separation of Concerns.
  • Scaling containers horizontally is much easier if the container is isolated to a single function.

This way the two containers were independent of each other. The postgresql db container had a volume mounted to persist the data.

A more detailed explanation can be found here

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM