|
Size: 4641
Comment:
|
← Revision 7 as of 2026-01-01 15:09:03 ⇥
Size: 9112
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| = Conda (Anaconda / Miniconda) = | = Conda (Miniforge / Mamba) = <<TableOfContents>> == Conda とは? == Conda は、'''プログラミング言語ごとの壁を越えた「パッケージ管理システム」兼「仮想環境管理システム」'''です。 Python の標準的なツール(pip)は Python 製のライブラリしか管理できませんが、Conda は C/C++ や Fortran で書かれたライブラリ(数値計算ライブラリやコンパイラなど)も含めて一括管理できます。 重力波解析(GWpy, LALSuite, nds2-clientなど)では、Python 以外の言語で書かれたバイナリに依存するツールが多いため、'''IGWN(LIGO-Virgo-KAGRA)では Conda の使用が推奨されています'''。 主なメリット: * '''環境の分離''': プロジェクトA(古い解析コード)とプロジェクトB(最新の解析コード)で異なるバージョンの Python やライブラリを使い分けることができます。 * '''バイナリの管理''': gwpy や nds2-client のような複雑な依存関係を持つツールも、コンパイルエラーに悩まされることなくインストールできます。 ---- |
| Line 5: | Line 18: |
| [[https://www.anaconda.com/distribution/|official site]] | [[https://github.com/conda-forge/miniforge|Miniforge (GitHub)]] |
| Line 10: | Line 23: |
| == IGWN "Local usage"の和訳 (2023-01-11) == このセクションはローカルマシン、つまりラップトップやデスクトップワークステーションで conda を使うユーザ向けに書かれています。 |
== IGWN "Local usage"の和訳・要約 (2025-01 Update) == このセクションはローカルマシン、つまりラップトップやデスクトップワークステーションで conda 環境を構築するユーザ向けです。 |
| Line 13: | Line 26: |
| 1. condaのインストール まず、conda自体のインストールです。Mambaforgeからcondaをインストールすることをお勧めします。[[https://github.com/conda-forge/miniforge#mambaforge]] |
以前は Anaconda や Mambaforge が使われていましたが、現在は '''Miniforge''' の使用が推奨されています。Miniforge をインストールすることで、高速なパッケージマネージャーである mamba も自動的に使えるようになります。 1. Miniforgeのインストール まず、GitHubのリリースページからお使いのOS (Linux, MacOS, Windows) に合ったインストーラーをダウンロードします。 [[https://github.com/conda-forge/miniforge#install]] 以下はLinux (x86_64) の場合のコマンド例です。MacOS (Apple Silicon) の場合などはファイル名が異なるので注意してください。 |
| Line 16: | Line 35: |
| {{{ $ curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh }}} |
{{{ $ curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh }}} |
| Line 20: | Line 39: |
| {{{ $ bash Mambaforge-Linux-x86_64.sh |
{{{ $ bash Miniforge3-Linux-x86_64.sh |
| Line 23: | Line 42: |
| Welcome to Mambaforge 22.9.0-2 | Welcome to Miniforge3 24.x.x-x |
| Line 28: | Line 47: |
| >>> (enterキーを押す) | >>> (enterキーを押す) |
| Line 35: | Line 54: |
| (中略) | (中略: インストール先はデフォルトのままで通常問題ありません) |
| Line 37: | Line 56: |
| Do you wish the installer to initialize Mambaforge | Do you wish the installer to initialize Miniforge3 |
| Line 50: | Line 69: |
| Thank you for installing Mambaforge! }}} |
Thank you for installing Miniforge3! }}} |
| Line 53: | Line 72: |
| 2. condaの設定を確認する 正しくインストールされていたら、新しいターミナルウィンドウを開いた後 condaが正しく動作することを確認できるはずです。(出力結果は人や時によって変わります) |
2. 設定を確認する 正しくインストールされていたら、新しいターミナルウィンドウを開いた後、conda (または mamba) が正しく動作することを確認できるはずです。 |
| Line 59: | Line 78: |
active environment : None shell level : 0 user config file : /home/ユーザー名//.condarc populated config files : /home/ユーザー名//mambaforge/.condarc conda version : 22.9.0 |
active environment : base shell level : 1 user config file : /home/ユーザー名/.condarc populated config files : /home/ユーザー名/.condarc conda version : 24.x.x |
| Line 67: | Line 84: |
| python version : 3.10.6.final.0 virtual packages : __cuda=11.7=0 __linux=5.10.102.1=0 __glibc=2.31=0 |
python version : 3.10.x (または 3.11.x) virtual packages : __archspec=1=x86_64 __conda=24.x.x=0 __glibc=2.x=0 __linux=5.x=0 |
| Line 72: | Line 90: |
| __archspec=1=x86_64 base environment : /home/ユーザー名//mambaforge (writable) conda av data dir : /home/ユーザー名//mambaforge/etc/conda |
base environment : /home/ユーザー名/miniforge3 (writable) conda av data dir : /home/ユーザー名/miniforge3/etc/conda |
| Line 78: | Line 95: |
| package cache : /home/ユーザー名//mambaforge/pkgs /home/ユーザー名//.conda/pkgs envs directories : /home/ユーザー名//mambaforge/envs /home/ユーザー名//.conda/envs |
package cache : /home/ユーザー名/miniforge3/pkgs /home/ユーザー名/.conda/pkgs envs directories : /home/ユーザー名/miniforge3/envs /home/ユーザー名/.conda/envs |
| Line 83: | Line 100: |
| user-agent : conda/22.9.0 requests/2.28.1 CPython/3.10.6 Linux/5.10.102.1-microsoft-standard-WSL2 debian/11 glibc/2.31 | user-agent : conda/24.x.x requests/2.x.x CPython/3.10.x ... |
| Line 90: | Line 107: |
| * conda-forgeチャンネルが設定されていることを確認する IGWN ソフトウェアは conda-forge パッケージチャンネルにのみアップロードされます。上記の conda info の出力に conda-forge への参照がない場合は、以下のように conda-forge チャンネルを手動で設定する必要があります。 |
* conda-forgeチャンネルの確認 Miniforgeを使用している場合、デフォルトで conda-forge が最優先のチャンネルとして設定されているはずです(channel URLs の一番上が conda-forge になっていればOK)。 Anacondaを使用している場合のみ、以下の設定が必要です(Miniforgeなら不要です): |
| Line 98: | Line 115: |
| == 解析用環境の作成 == ベース環境 (base) に直接パッケージを入れるのではなく、解析用の仮想環境を作成することを強く推奨します。 |
|
| Line 99: | Line 118: |
| == condaの削除 == | * 仮想環境の作成と有効化 (例: python 3.11環境) {{{ $ mamba create -n igwn-py311 python=3.11 $ mamba activate igwn-py311 (igwn-py311) $ mamba install gwpy python-nds2-client }}} ※ conda コマンドの代わりに mamba を使うと、インストール速度が格段に速くなります。 == condaの削除・クリーンアップ == |
| Line 105: | Line 133: |
| base * /home/ユーザー名/anaconda3 igwn-py39-20220317 /home/ユーザー名/anaconda3/envs/igwn-py39-20220317 |
base * /home/ユーザー名/miniforge3 igwn-py311 /home/ユーザー名/miniforge3/envs/igwn-py311 |
| Line 114: | Line 142: |
| * 不要になったパッケージやキャッシュを削除 | * 不要になったパッケージやキャッシュを削除 (ディスク容量の節約) |
| Line 119: | Line 147: |
| * conda自身を削除 | * Miniforge (conda) 自身を削除 Miniforgeの場合は、ディレクトリごと削除し、.bashrc 等の記述を消すだけで完了です。 |
| Line 121: | Line 150: |
| $ conda install anaconda-clean $ anaconda-clean --yes $ rm -r /home/ユーザー名/anaconda3 |
$ rm -rf /home/ユーザー名/miniforge3 |
| Line 125: | Line 152: |
| 最後にPATHの設定を戻しておくために.bash_profileからAnacondaのパスを消しておく | その後、~/.bashrc (または ~/.zshrc, ~/.bash_profile) をエディタで開き、>>> conda initialize >>> から <<< conda initialize <<< までのブロックを削除してください。 = 他のパッケージ管理ツールとの比較・注意点 = PythonにはConda以外にも多くの管理ツールがあります。それぞれの違いと、Conda環境内での併用ルールについてまとめます。 || '''ツール''' || '''概要''' || '''Condaとの関係・注意点''' || || '''pip''' || Python標準のパッケージインストーラー (PyPI)。 || '''併用可能だが要注意。'''<<BR>>Conda環境内で使用できますが、必ず「Condaで入れられるものは全てCondaで入れ、Condaに無いものだけpipで入れる」順序を守ってください。混ぜると環境が壊れやすくなります。 || || '''venv''' / '''virtualenv''' || Python標準の仮想環境作成ツール。軽量。 || '''原則併用しません。'''<<BR>>Conda自体が仮想環境機能を持っています。Condaで作った環境の中にさらにvenvを作るのは混乱の元です。 || || '''uv''' || Rust製の超高速な次世代ツール (pip/venvの代替)。 || '''Condaの代わりになりつつあるが、現状は非推奨。'''<<BR>>非常に高速ですが、KAGRA/LIGOの解析ツールの多くはCondaでの配布を前提としています。上級者以外はMiniforgeの使用が無難です。 || == 重要: Conda と pip を混ぜる際のマナー == Conda環境内でどうしても pip を使う必要がある場合(gwpy等はCondaにあるが、特定のマイナーなライブラリがPyPIにしかない場合など)は、以下の手順を厳守してください。 1. 仮想環境を作成する ({{{conda create -n myenv python=3.11}}}) 2. {{{conda install}}} (または {{{mamba install}}}) で、'''必要なパッケージを可能な限り全てインストールする'''。 3. どうしても Conda に無いパッケージのみ、最後に {{{pip install}}} する。 4. '''その後、同じ環境で {{{conda install}}} を追記しない。''' * (pipを使った後にcondaを使うと、依存関係の整合性が取れなくなり環境が壊れることがあります) |
Conda (Miniforge / Mamba)
Contents
Conda とは?
Conda は、プログラミング言語ごとの壁を越えた「パッケージ管理システム」兼「仮想環境管理システム」です。
Python の標準的なツール(pip)は Python 製のライブラリしか管理できませんが、Conda は C/C++ や Fortran で書かれたライブラリ(数値計算ライブラリやコンパイラなど)も含めて一括管理できます。 重力波解析(GWpy, LALSuite, nds2-clientなど)では、Python 以外の言語で書かれたバイナリに依存するツールが多いため、IGWN(LIGO-Virgo-KAGRA)では Conda の使用が推奨されています。
主なメリット:
環境の分離: プロジェクトA(古い解析コード)とプロジェクトB(最新の解析コード)で異なるバージョンの Python やライブラリを使い分けることができます。
バイナリの管理: gwpy や nds2-client のような複雑な依存関係を持つツールも、コンパイルエラーに悩まされることなくインストールできます。
An open source package management system and environment management system
Please install conda on your PC referring to the IGWN webpage.
https://computing.docs.ligo.org/conda/usage/#local
IGWN "Local usage"の和訳・要約 (2025-01 Update)
このセクションはローカルマシン、つまりラップトップやデスクトップワークステーションで conda 環境を構築するユーザ向けです。
以前は Anaconda や Mambaforge が使われていましたが、現在は Miniforge の使用が推奨されています。Miniforge をインストールすることで、高速なパッケージマネージャーである mamba も自動的に使えるようになります。
1. Miniforgeのインストール
まず、GitHubのリリースページからお使いのOS (Linux, MacOS, Windows) に合ったインストーラーをダウンロードします。 https://github.com/conda-forge/miniforge#install 以下はLinux (x86_64) の場合のコマンド例です。MacOS (Apple Silicon) の場合などはファイル名が異なるので注意してください。
- コマンドラインでインストーラーをダウンロードする。
$ curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
- インストーラーを実行する。
$ bash Miniforge3-Linux-x86_64.sh Welcome to Miniforge3 24.x.x-x In order to continue the installation process, please review the license agreement. Please, press ENTER to continue >>> (enterキーを押す) (中略) Do you accept the license terms? [yes|no] [no] >>> (yesと回答する) (中略: インストール先はデフォルトのままで通常問題ありません) Do you wish the installer to initialize Miniforge3 by running conda init? [yes|no] [no] >>> (yesと回答する) (中略) ==> For changes to take effect, close and re-open your current shell. <== If you'd prefer that conda's base environment not be activated on startup, set the auto_activate_base parameter to false: conda config --set auto_activate_base false Thank you for installing Miniforge3!
2. 設定を確認する
- 正しくインストールされていたら、新しいターミナルウィンドウを開いた後、conda (または mamba) が正しく動作することを確認できるはずです。
$ conda info active environment : base shell level : 1 user config file : /home/ユーザー名/.condarc populated config files : /home/ユーザー名/.condarc conda version : 24.x.x conda-build version : not installed python version : 3.10.x (または 3.11.x) virtual packages : __archspec=1=x86_64 __conda=24.x.x=0 __glibc=2.x=0 __linux=5.x=0 __unix=0=0 base environment : /home/ユーザー名/miniforge3 (writable) conda av data dir : /home/ユーザー名/miniforge3/etc/conda conda av metadata url : None channel URLs : https://conda.anaconda.org/conda-forge/linux-64 https://conda.anaconda.org/conda-forge/noarch package cache : /home/ユーザー名/miniforge3/pkgs /home/ユーザー名/.conda/pkgs envs directories : /home/ユーザー名/miniforge3/envs /home/ユーザー名/.conda/envs platform : linux-64 user-agent : conda/24.x.x requests/2.x.x CPython/3.10.x ... UID:GID : 1000:1000 netrc file : None offline mode : False
- conda-forgeチャンネルの確認
- Miniforgeを使用している場合、デフォルトで conda-forge が最優先のチャンネルとして設定されているはずです(channel URLs の一番上が conda-forge になっていればOK)。 Anacondaを使用している場合のみ、以下の設定が必要です(Miniforgeなら不要です):
$ conda config --add channels conda-forge $ conda config --set channel_priority strict
- Miniforgeを使用している場合、デフォルトで conda-forge が最優先のチャンネルとして設定されているはずです(channel URLs の一番上が conda-forge になっていればOK)。 Anacondaを使用している場合のみ、以下の設定が必要です(Miniforgeなら不要です):
解析用環境の作成
ベース環境 (base) に直接パッケージを入れるのではなく、解析用の仮想環境を作成することを強く推奨します。
- 仮想環境の作成と有効化 (例: python 3.11環境)
$ mamba create -n igwn-py311 python=3.11 $ mamba activate igwn-py311 (igwn-py311) $ mamba install gwpy python-nds2-client
※ conda コマンドの代わりに mamba を使うと、インストール速度が格段に速くなります。
condaの削除・クリーンアップ
- 環境一覧を表示
$ conda info -e # conda environments: # base * /home/ユーザー名/miniforge3 igwn-py311 /home/ユーザー名/miniforge3/envs/igwn-py311
- いらない環境を削除
$ conda remove --name ENV_NAME --all
- 不要になったパッケージやキャッシュを削除 (ディスク容量の節約)
$ conda clean --all
- Miniforge (conda) 自身を削除
- Miniforgeの場合は、ディレクトリごと削除し、.bashrc 等の記述を消すだけで完了です。
$ rm -rf /home/ユーザー名/miniforge3
その後、~/.bashrc (または ~/.zshrc, ~/.bash_profile) をエディタで開き、>>> conda initialize >>> から <<< conda initialize <<< までのブロックを削除してください。
- Miniforgeの場合は、ディレクトリごと削除し、.bashrc 等の記述を消すだけで完了です。
他のパッケージ管理ツールとの比較・注意点
PythonにはConda以外にも多くの管理ツールがあります。それぞれの違いと、Conda環境内での併用ルールについてまとめます。
ツール |
概要 |
Condaとの関係・注意点 |
pip |
Python標準のパッケージインストーラー (PyPI)。 |
併用可能だが要注意。 |
venv / virtualenv |
Python標準の仮想環境作成ツール。軽量。 |
原則併用しません。 |
uv |
Rust製の超高速な次世代ツール (pip/venvの代替)。 |
Condaの代わりになりつつあるが、現状は非推奨。 |
重要: Conda と pip を混ぜる際のマナー
Conda環境内でどうしても pip を使う必要がある場合(gwpy等はCondaにあるが、特定のマイナーなライブラリがPyPIにしかない場合など)は、以下の手順を厳守してください。
仮想環境を作成する (conda create -n myenv python=3.11)
conda install (または mamba install) で、必要なパッケージを可能な限り全てインストールする。
どうしても Conda に無いパッケージのみ、最後に pip install する。
その後、同じ環境で conda install を追記しない。
- (pipを使った後にcondaを使うと、依存関係の整合性が取れなくなり環境が壊れることがあります)
