So I’m in the process of (re-) setting up my homelab and unsure about how to handle databases. Many images require a database, which the docker-compose usually provides inside the stack.

Now my question, shall I have 1 database container which is accessed by all containers? Or shall I have a separate container for each service?

For critical services, which shall have as few dependencies as possible I’m already using sqlite or a similar solution.

Also on a sidenote: I have two docker hosts, can I let the containers of 1 hypervisors use the same internal docker network?

TIA!

  • MaggiWuerze
    link
    fedilink
    131 year ago

    The cost of running a db container for each stack is negligible compared to the comfort of not having to clean up your main database container after you just tried some random container. Then you also have different requirements by different containers, each asking for a specific database for whatever reason and lastly you have another level of seperation between your services