Для компонента аутентификации нам осталось доделать возможность входа через OAuth-провайдер на другом домене или поддомене. Для указания хоста мы можем использовать переменные окружения как мы делаем в бэкенде.
Но работа с окружением во фронтенде сильно отличается тем, что JavaScript код выполняется не на севрере, а в браузере, где никаких переменных нет. И для динамической подстановки значений в момент запуска сервера нам придётся использовать особые подходы.
Поэтому сегодня разберём внутреннюю работу и использование переменных окружения в React при разработке и при деплое с Docker. Заодно познакомимся с аргументами для пробрасывания ключей доступа к приватным репозиториям в процессе сборки контейнеров:
Чтобы не пропускать новые эпизоды подпишитесь на наш канал @deworkerpro в Telegram
Спасибо!
Спасибо! Ждем новых эпизодов)
Спасибо!
спасибо.
Дима, добрый день, в локальном окружении именно переменные с секретами не подставляются на фронт почему-то, передает /run/secrets/secret_file_name, что мог упустить? Спасибо!
Да, так и есть. В переменных окружения оказываются эта строка с именем файла.
В PHP-бэкенде мы сами читаем файлы по этим именам через
file_get_contents
в функцииenv()
.В JS-фронденде мы тоже должны их сами считать в
docker-entrypoint.sh
командойcat
в переменные как мы делали в скрипте бэкапа:Все понял, спасибо, примерно так и сделал, правда решил избавиться от суффиксов _FILE и обновлять в подставном entrypoint значение переменных окружения содержимым файла секрета, если текущее значение совпадает с паттерном адреса секрета, получился более универсальный подход на большинство сервисов и без суффиксов в переменных:
Или войти через: