Я выяснил кое-что для моей собственной ситуации, в которой у каждого клиента был свой собственный поддомен. Я могу воспользоваться разделом виртуальных хостов конфигурации apache, чтобы добавить дополнительную переменную среды и использовать ее для задания имени базы данных.
В апаче:
# ...
SetEnv SUBDOMAIN_NAME "db_name"
</VirtualHost>
В моем .env для разработки (это будет описано выше в конфигурации apache для prod). В основном, просто удалите имя базы данных из URL
DATABASE_URL=mysql://root:root@mysql:3306/
Наконец, в моем doctrine.yaml под параметрами я установил значение по умолчанию. Таким образом, мы не выдаем ошибки для ненастроенных клиентов и можем показать хорошее чистое сообщение «необходимо настроить» для технической поддержки:
env(SUBDOMAIN_NAME): 'default_customer'
и в doctrine.yaml замените значение для URL на
url: '%env(resolve:DATABASE_URL)%%env(resolve:SUBDOMAIN_NAME)%'