Есть у меня 1 проект, написан на nuxt. У нас для каждого города свой поддомен по типу msk.mysite.ru и т.п.
Отличия лишь 2, это цены и страница с контактами. Для НН она одна, для остальных доменов другая. Домены реализованы через nginx. Но, т.к. у нас по итогу, на серваке фронт и бек лежат вместе, то поддомен у обоих одинаковый. А значит запрос автоматом запросит нужные данные.
Если у вас именно разные сборки для разных доменов. То делаете множество билдов для разных доменов. А nginx будет брать нужную и отображать.
Делать разные сайты очень глупо. В случае, если домен у api один, а фронт живёт сам по себе на другом, достаточно просто посылать заголовок с городом бекенду, который сам должен рулить нужными данными.
Есть в практике другие сайты, мультиязычные. Использовали i18n для превода интерфейса. Перевод хранится в json файлах, для нужной локали загружается нужный json. Так же, бекенду передаётся в заголовке с запросом текущая локаль, для того, что бы бекенд отдавал контент с нужным переводом.
Всё просто.