PipとVirtualenvの詳細設定¶
pip
にアクティブな仮想環境が必要です¶
今では、仮想環境を使用すると、開発環境をきれいに保ち、異なるプロジェクトの要件を別々に保つことができます。
多くの異なるプロジェクトで作業を開始すると、特定のプロジェクトに戻ったときに関連する仮想環境をアクティブにすることを覚えにくくなる可能性があります。 その結果、プロジェクトの仮想環境用のパッケージを実際にインストールしていると考えながら、パッケージをグローバルにインストールするのは非常に簡単です。 時間が経つにつれて、これは不吉なグローバルパッケージリストになる可能性があります。
pip install
を使うときにあなたのアクティブな仮想環境にパッケージをインストールするために、あなたの ~/.bashrc
ファイルに次の行を追加することを検討してください:
export PIP_REQUIRE_VIRTUALENV=true
この変更を保存し、 ~/.bashrc
ファイルを source ~/.bashrc
で取得した後、仮想環境にいない場合、pipはインストールできなくなります。 仮想環境の外側で pip install
を実行しようとすると、パッケージをインストールするためには、起動された仮想環境が必要であることを丁寧に思い出させます。
$ pip install requests
Could not find an activated virtualenv (required).
pip.conf
または pip.ini
ファイルを編集することで、この設定を行うこともできます。 pip.conf
はUnixとMac OS Xのオペレーティングシステムで使われています。
$HOME/.pip/pip.conf
同様に、pip.ini
ファイルはWindowsオペレーティングシステムで使用されています。
%HOME%\pip\pip.ini
これらの場所に pip.conf
または pip.ini
ファイルがない場合は、オペレーティングシステムの正しい名前で新しいファイルを作成することができます。
すでに設定ファイルがある場合は、[global]
の設定の下に次の行を追加して、アクティブな仮想環境が必要になります:
require-virtualenv = true
設定ファイルがない場合は、新しいファイルを作成し、次の行をこの新しいファイルに追加する必要があります:
[global]
require-virtualenv = true
もちろん、いくつかのパッケージをグローバルにインストールする必要があります(通常は異なるプロジェクト間で一貫して使用するパッケージをインストールする必要があります) ~/.bashrc
ファイルに以下を追加することで実現できます:
gpip() {
PIP_REQUIRE_VIRTUALENV="" pip "$@"
}
変更を保存して ~/.bashrc
ファイルを入手したら、gpip install
を実行してパッケージをグローバルにインストールできます。 関数の名前を好きなものに変更することができます。pipを使ってパッケージをグローバルにインストールしようとするときにその名前を使用する必要があることに留意してください。
将来の使用のためのパッケージのキャッシュ¶
すべての開発者は優先ライブラリを持っており、多くの異なるプロジェクトで作業しているときは、使用するライブラリ間で重複することになります。 たとえば、多くの異なるプロジェクトで requests
ライブラリを使用しているかもしれません。
新しいプロジェクト(および結果として新しい仮想環境)での作業を開始するたびに、同じパッケージ/ライブラリを再ダウンロードする必要はありません。 幸いにも、既にインストールされているパッケージを再利用するようにpipを設定することができます。
UNIXシステムでは、次の行を .bashrc
または .bash_profile
ファイルに追加することができます。
export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache
パスを好きな場所に設定することができます(書き込みアクセス権がある限り)。 この行を追加した後、 .bashrc
(または .bash_profile
)ファイルを source
して、あなたはすべて設定されます。
同じ設定を行う別の方法は、あなたのシステムに応じて pip.conf
または pip.ini
ファイルを使用することです。 Windowsの場合は、 [global]
設定の下で pip.ini
ファイルに以下の行を追加することができます:
download-cache = %HOME%\pip\cache
同様に、UNIXシステムでは、[global]
設定の下で pip.conf
ファイルに以下の行を追加するだけです:
download-cache = $HOME/.pip/cache
キャッシュを保存するのに好きなパスを使用することはできますが、pip.conf
または pip.ini
ファイルが存在するフォルダ 内 に新しいフォルダを作成することをお勧めします。 あなたがこのおまじないのパスのすべてを信頼しない場合は、ここで提供されている値を使用すれば問題ありません。