A certain engineer "COMPLEX"

開発メモ その127 Anaconda navigatorの仮想環境のディレクトリを変更する

Introduction


備忘録。
デフォルトだと%LocalAppData%に作成しにいくので辛い。
また最近のAnaconda navigatorは初回に保存先を聞いてくるようですが、それをスキップするとGUIから変更する手段がないのも辛い。


2018/11/01 更新
仮想環境はcondaを使わない方が良いです。condaの仮想環境ではpipでインストールしたパッケージを全ての環境で共有してしまうからです。
正しい仮想環境の作成は開発メモ その143 Pythonの仮想環境を正しく使うを参考にして下さい。

Resolution


解決策はこちら。

Can I change the path /Users/nolan/miniconda/envs/ to another one when creating a virtual environment ? I'd like it to be specific to my project directo...

やはりStackoverflowはしゅごい(小並感)

手順は、

1. .condarc を開く

私の環境では%userprofile%にありました。

2. 下記の記述を追記


envs_dirs:
- /Users/nolan/newpath

ディレクトリ部分は好きなように変えましょう。
ここではD:\Works\Python\Envsに変更します。パスの区切りはバックスラッシュでOK。
つまり


envs_dirs:
- D:\Works\Python\Envs

です。

3. 既存の環境を移動

次に既に作成されたいる仮想環境を移動します。

規定では、%LocalAppData%\conda\conda\envsに作成されている模様。
コマンドで、


$ conda info -e
# conda environments:
#
base * C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64
face_regognition C:\Users\XXXXXXX\AppData\Local\conda\conda\envs\face_regognition

という確認も可能。
(どうでもいいけどスペル間違えてる....)

場所がわかったら、そこの配下をD:\Works\Python\Envsコピーします。
移動すると壊れた場合に戻せないので。

4. 古い環境を削除

この状態で、先ほどのコマンドを打っても


$ conda info -e
# conda environments:
#
base * C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64
face_regognition C:\Users\XXXXXXX\AppData\Local\conda\conda\envs\face_regognition

コピーを認識していませんが...
Anaconda Navigatorは認識しています。

おそらく名前が重複している場合は、先に見つかった方を優先しているのでしょう。
ですので、ここから古い方を削除します。

削除後、


$ conda info -e
# conda environments:
#
base * C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64
face_regognition D:\Works\Python\Envs\face_regognition

きちんとコピーを認識してくれました。

無事に完了です。

コメントを残す

メールアドレスが公開されることはありません。

%d人のブロガーが「いいね」をつけました。