приложения в рантайме получать переменную окружения?
Кейс такой 1 раз сбилдить приложение и на разных серверах разные переменные, как то при запуске сбилденного приложения можно их считать ?
Это уже не переменная окружения, это просто значение, которое ты можешь взять по апи или дёрнуть json, который лежит на сервере
globalThis.env = JSON.stringify(process.env)
я не уверен о том как точно это происходит пишу как понял со слов девопса он один и тот же сбилденный контейнер поднимает только с разными env надо как то их видеть
Какая конечная цель?
После билда переменные окружения не существуют
разные эндпоинты на каждом сервере для gql, которые хотел считать с env
https://www.freecodecamp.org/news/how-to-implement-runtime-environment-variables-with-create-react-app-docker-and-nginx-7f9d42a91d70/ Вот, кидали такую статью тут.
https://t.me/react_js/1056841 Вот и вся статья🌚
Да, но надо объяснить как файлик такой нормально подсовывать в докер, и т.п.
Вы слишком серьёзен, сударь😁
Зачем файлик совать если можно просто в билд тайм просто застрингифаить енв в пользовательском коде?
Для того, чтобы можно было, не пересобирая контейнер, устанавливать настройки для разных окружений
Ниче не понял, билд то все равно пересобирать?
Нет Если вы оттестировали контейнер где-то в тестовом окружениии, вы не хотите пересобирать его в прод-окружении заново, нет никаких гарантий, что вы получите точно такой же контейнер и ничего не отвалится
Там же в статье баш скриптом файл в паблик директорию кладется, как тогда это работает?
Ну, в статье это и описано. Из окружения во время запуска контейнера копируется нужный файл, а билд просто его уже подключает внутри index.html
В public директорию cra.
Да, вы правы, в статье не тот подход описан😅
Да я вцелом спрашиваю, может я что то недопонял, работу с докером и вот это все девопсовское я ни шарю
Короче, вы делаете билд cra, в котором есть отедльный файл конфигурации для задания переменных среды, этот файл не попадает в чанк, лежит отдельно, подключается внутри index.html. и с помощью volume-ов из окружения можно этот файл подсовывать такой, который надо, не пересобирая при этом весь контейнер
Обсуждают сегодня