Spec-Zone.ru › Deno 2

Переменные окружения

Существует несколько способов использования переменных окружения в Deno:

Встроенные переменные Deno.env

Интерпретатор Deno предоставляет встроенную поддержку переменных окружения с помощью Deno.env.

Deno.env имеет методы получения и задания значений. Вот пример использования:

Deno.env.set("FIREBASE_API_KEY", "examplekey123");
Deno.env.set("FIREBASE_AUTH_DOMAIN", "firebasedomain.com");

console.log(Deno.env.get("FIREBASE_API_KEY")); // examplekey123
console.log(Deno.env.get("FIREBASE_AUTH_DOMAIN")); // firebasedomain.com
console.log(Deno.env.has("FIREBASE_AUTH_DOMAIN")); // true

.env файл

Deno поддерживает .env файлы. Вы можете заставить Deno читать переменные окружения из .env используя флаг --env-file: deno run --env-file <script>. По умолчанию это будет .env; если вам нужно загрузить переменные окружения из другого файла, вы можете указать этот файл в качестве параметра флага. Кроме того, вы можете использовать несколько флагов --env-file (например, deno run --env-file=.env.one --env-file=.env.two --allow-env <script>) для загрузки переменных из нескольких файлов.

Примечание

Если в одном .env файле существует несколько определений одной и той же переменной окружения, будет применено первое вхождение. Однако, если одна и та же переменная определена в нескольких .env файлах (используя несколько аргументов --env-file), приоритет будет у значения из последнего указанного файла. Это означает, что будет применено первое вхождение, найденное в последнем указанном .env файле.

Альтернативно, пакет dotenv в стандартной библиотеке также загрузит переменные окружения из .env.

Предположим, у вас есть .env файл, который выглядит так:

GREETING="Hello, world."

Импортируйте модуль load для автоматического импорта из .env файла в среду процесса.

import "jsr:@std/dotenv/load";

console.log(Deno.env.get("GREETING")); // "Hello, world."

Дополнительная документация по обработке .env доступна в документации @std/dotenv.

std/cli

В стандартной библиотеке Deno есть модуль std/cli для обработки аргументов командной строки. Обратитесь к документации модуля для получения информации и примеров.

Специальные переменные окружения

Интерпретатор Deno имеет следующие специальные переменные окружения.

имя описание
DENO_AUTH_TOKENS Список токенов доступа и имен хостов, разделенных точкой с запятой, используемых при получении удаленных модулей из частных репозиториев
(например, abcde12345@deno.land;54321edcba@github.com)
DENO_TLS_CA_STORE Список магазинов сертификатов, упорядоченных по порядку. Возможные значения: system, mozilla. По умолчанию mozilla.
DENO_CERT Загрузка сертификата уполномоченного органа из PEM-кодированного файла
DENO_DIR Установить каталог кэша
DENO_INSTALL_ROOT Установить каталог вывода deno install (по умолчанию $HOME/.deno/bin)
DENO_REPL_HISTORY Установить путь к файлу истории REPL. Файл истории отключен, если значение пустое.
(по умолчанию $DENO_DIR/deno_history.txt)
DENO_NO_PACKAGE_JSON Отключает автоматическое разрешение package.json
DENO_NO_PROMPT Установить для отключения запросов на разрешение при доступе
(альтернатива передаче --no-prompt при вызове)
DENO_NO_UPDATE_CHECK Установить для отключения проверки наличия новой версии Deno
DENO_V8_FLAGS Установить параметры командной строки V8
DENO_JOBS Количество параллельных рабочих процессов, используемых для флага --parallel с подкомандой test.
По умолчанию — количество доступных процессоров.
DENO_WEBGPU_TRACE Путь к каталогу для вывода отслеживания WGPU при использовании API WebGPU
DENO_WEBGPU_BACKEND Выберите бэкенд, который будет использовать WebGPU, или список бэкэндов, разделенных запятыми, в порядке предпочтения. Возможные значения — vulkan, dx12, metal, или opengl
HTTP_PROXY Адрес прокси-сервера для HTTP-запросов (загрузка модулей, fetch)
HTTPS_PROXY Адрес прокси-сервера для HTTPS-запросов (загрузка модулей, fetch)
NPM_CONFIG_REGISTRY URL для использования реестра npm.
NO_COLOR Установите для отключения цветного вывода
NO_PROXY Список хостов, разделенных запятыми, для которых не используется прокси-сервер (загрузка модулей, fetch)

© 2018–2024 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/reference/cli/env_variables

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API