.env
.gitignore
для сохранения конфиденциальных данных перед пушем в ваш репозиторий.Время разработки, сборки и генерации
Nuxt CLI имеет встроенную поддержку dotenv в режиме разработки, а также при запуске сборки nuxi build
и генерации nuxi generate
.
Если у вас есть файл .env
в корне проекта, то он автоматически загружается во время разработки, сборки и генерации. Любые переменные окружения, установленные там, будут доступны в вашем файле nuxt.config
и модулях.
MY_ENV_VARIABLE=hello
.env
или полное удаление файла .env
не сбросит уже установленные значения.Кастомный файл .env
Если вы хотите использовать разные файлы - например, .env.local
или .env.production
- вы можете передавать флаг --dotenv
при использовании nuxi
.
npx nuxi dev --dotenv .env.local
При обновлении .env
во время разработки, экземпляр Nuxt автоматически перезапускается, чтобы применить новые значения к process.env
.
Production
После того как сервер будет создан, вы несете ответственность за установку переменных окружения при запуске сервера.
На данном этапе ваши .env
файлы не будут считываться. Способ их использования зависит от каждой конкретной среды.
Это связано с обеспечением совместимости в различных средах развертывания. В некоторых окружениях традиционная файловая система может быть недоступна, например, в бессерверных платформах или пограничных сетях, таких как Cloudflare Workers.
Файлы .env
не используются в продакшене, поэтому переменные окружения устанавливаются явно, используя инструменты и методы, которые предоставляет ваш хостинг. Вот несколько распространенных подходов:
- Вы можете передавать переменные окружения в качестве аргументов, используя терминал;
$ DATABASE_HOST=mydatabaseconnectionstring node .output/server/index.mjs
- Вы можете установить переменные окружения в файлах конфигурации оболочки, например в файлах
.bashrc
или.profile
; - Большинство облачных серверов - Vercel, Netlify и AWS, предоставляют интерфейсы для настройки переменных окружения, например панели управления, CLI инструменты или файлы конфигурации.
Предпросмотр в Production
Для предварительного просмотра локального продакшена, мы рекомендуем использовать nuxi preview
, поскольку при использовании данной команды файл .env
будет загружен в process.env
для удобства. Обратите внимание, что эта команда требует установки зависимостей в директории пакета.
Вы можете передавать переменные окружения в качестве аргументов, используя терминал. Например, для Linux или macOS:
DATABASE_HOST=mydatabaseconnectionstring node .output/server/index.mjs
Обратите внимание, что для статического сайта невозможно задать runtime-конфигурацию после предварительного рендеринга вашего проекта.
appConfig
. Вы можете задать appConfig
внутри nuxt.config
(используя переменные окружения) и используя файл ~/app.config.ts
.