Conda:选择为每个环境下载包的位置
Conda: Choose where packages are downloaded for each environment
我是 运行 不同的 conda env,我想指定包的下载位置,而不是将所有包都放在我的 $home
.
我发现 this question 在撰写本文时没有答案。但是,我的问题是不同的:我不想在我的 .condarc 中指定 pkg_dir 因为我想为每个项目设置不同的下载目录(space 不是问题)。
如何为特定的 conda 环境定义 pkg_dir?
请注意,我创建的环境为 conda env create -f my_env.yml -p complete-env
。
conda
的一个基本概念是,包被下载并提取到共享缓存中,它们从中有选择地链接到不同的 conda 环境中。你想反对这个概念,所以无论你做什么都会很 hacky 并且会产生影响。
您可以为每个项目安装一个单独的 Miniconda,并(尝试)通过从您的主目录中删除所有与 conda 相关的文件和环境设置来确保它们彼此不了解,甚至使用每个项目都有不同的 HOME。在处理项目之前,您必须将正确的 conda
放在 PATH 中。
或者您可以将 Miniconda 安装在您的主目录之外的专用驱动器上,并将 conda 环境放在您的主目录中。这将防止 conda
硬链接文件。它仍会将包下载到共享缓存中,但随后仅将相关文件复制到您的每个项目中。当然,复制比硬链接慢。
不可能为每个环境而不是每个 conda 安装指定包目录,正如 darthbith 已经在评论中指出的那样。
我是 运行 不同的 conda env,我想指定包的下载位置,而不是将所有包都放在我的 $home
.
我发现 this question 在撰写本文时没有答案。但是,我的问题是不同的:我不想在我的 .condarc 中指定 pkg_dir 因为我想为每个项目设置不同的下载目录(space 不是问题)。
如何为特定的 conda 环境定义 pkg_dir?
请注意,我创建的环境为 conda env create -f my_env.yml -p complete-env
。
conda
的一个基本概念是,包被下载并提取到共享缓存中,它们从中有选择地链接到不同的 conda 环境中。你想反对这个概念,所以无论你做什么都会很 hacky 并且会产生影响。
您可以为每个项目安装一个单独的 Miniconda,并(尝试)通过从您的主目录中删除所有与 conda 相关的文件和环境设置来确保它们彼此不了解,甚至使用每个项目都有不同的 HOME。在处理项目之前,您必须将正确的 conda
放在 PATH 中。
或者您可以将 Miniconda 安装在您的主目录之外的专用驱动器上,并将 conda 环境放在您的主目录中。这将防止 conda
硬链接文件。它仍会将包下载到共享缓存中,但随后仅将相关文件复制到您的每个项目中。当然,复制比硬链接慢。
不可能为每个环境而不是每个 conda 安装指定包目录,正如 darthbith 已经在评论中指出的那样。