Проблема здесь:
Контейнеры mongo имеют одинаковые общие тома с хостом докера
Вы не можете запустить два экземпляра mongo в одном каталоге данных.Это может привести к повреждению данных и странным проблемам, поэтому mongo-db явно запрещает это делать (см. Также этот вопрос здесь)
Почему вы хотите это сделать?Обычно вы предоставляете два разных тома для ваших экземпляров mongo, например:
version: '3'
services:
frontend:
image: fernandomaxwell/frontend
ports:
- "3007:3007"
networks:
main:
database_frontend:
backend:
image: fernandomaxwell/backend
ports:
- "2007:2007"
networks:
main:
database_backend:
mongo_backend:
image: mongo
volumes:
- "/var/lib/mongodb-back:/data/db"
ports:
- "27017:27017"
networks:
database_backend:
mongo_frontend:
image: mongo
volumes:
- "/var/lib/mongodb-front:/data/db"
ports:
- "27018:27017"
networks:
database_frontend:
networks:
main:
database_backend:
database_frontend:
Кроме того, вы должны рассмотреть использование именованных томов вместо путей к хостам.Для этого вам не нужно заботиться о создании каталогов на хосте перед запуском compose-файла.Чтобы использовать именованные тома, просто измените объявление тома с "/var/lib/mongodb-back:/data/db"
на "mongodb-back:/data/db"