При первом запуске я предлагаю сделать все это на 1 машине. Контейнеры вашей базы данных могут использовать тома для сохранения данных на самой машине. Поэтому, когда вам нужно переключиться на другую машину, поскольку 1 машина работает слишком медленно, вы можете легко перенести данные вашей базы данных. Когда вы начинаете использовать более 1 машины для запуска Docker, вы, вероятно, захотите использовать опцию развертывания, такую как Kubernetes или Docker swarm. Это упростит процесс настройки вашей среды на разных машинах, потому что это будет делать Kubernetes.
Также, когда ваше приложение получает большой трафик, вы можете переключиться на управляемые базы данных, которые предоставляются такими службами, как GCP, AWS, Digitalocean и т. Д. Управляемая база данных будет автоматически масштабироваться, часто получать обновления и выполнять резервное копирование. автоматически. Это займет много нагрузки на ваши плечи. Я лично использую управляемые базы данных самостоятельно.
Мое предложение на данный момент: используйте 1 компьютер, изучайте Kubernetes, когда ваше приложение получает больше трафика. Просмотрите управляемые базы данных (доступно для Redis и Postgres).