Conda позволяет вам определить файл конфигурации yaml для создания новой среды, вот пример.
Мне было интересно, где я могу найти ссылку на документ об использовании ключей yaml, таких как name
, channels
и dependencies
.
Действительные ключи нигде не задокументированы полностью, насколько я знаю, но вот один из способов их найти:
# activate your base env first
$ conda activate
(base) $ python -c "import conda_env.env as env; print(env.VALID_KEYS)"
# ('name', 'dependencies', 'prefix', 'channels', 'variables')
Судя по коду проверки ключа, все остальные ключи будут просто проигнорированы, хотя пользователю будет выдано предупреждение.
name: Если это указано, это будет имя среды. Это можно переопределить с помощью аргумента --name|-n
.
префикс: В качестве альтернативы ключу имени можно использовать этот ключ, чтобы указать место для установки среды. Ключ имени будет иметь приоритет. Хотя это выводится в командах conda env export
, большинство пользователей не будут использовать это, потому что это путь. Однако это может быть полезно, когда Conda развертывается как часть более крупного программного пакета, и разработчики могут захотеть точно контролировать места установки среды.
каналы: этот ключ позволяет пользователям указывать альтернативные каналы для поиска при разрешении зависимостей.
зависимости: этот ключ позволяет указать пакеты для установки. Эта переменная принимает список строк (имен пакетов), а также подсписок для pip install
команд, например:
dependencies:
- python
- pip
- pip:
- foo
Обратите внимание, что значения под - pip:
будут проанализированы и помещены во временный requirements.txt
файл, который впоследствии будет передан pip install -r <tmp_requirements.txt>
. Это означает, что в дополнение к пакетам PyPI можно также поместить пакеты GitHub или даже отдельные файлы requirements.txt
для установки Pip. См. пример использования Advance Pip . Кроме того, имейте в виду, что лучшая рекомендация — использовать Pip экономно.
переменные: добавлено в Conda v4.9, это позволяет указать переменные среды, которые будут установлены и удалены при активации и деактивации среды соответственно. См. документацию по переменным окружения.