3
3

More than 1 year has passed since last update.

グローバル環境でpip installできないように制限する

Last updated at Posted at 2021-12-20

概要

環境変数 PIP_REQUIRE_VIRTUALENVtrue を設定することで、グローバル環境で pip install コマンドが実行されないようにできる。

$ export PIP_REQUIRE_VIRTUALENV=true

問題

venv を利用して仮想環境ごとに pip でのパッケージの管理を行う場合を考える。アクティベートをし忘れたまま pip install コマンドを実行してしまい、意図せずグローバル環境にパッケージがインストールされてしまうことがある。

$ python -m venv .venv # 仮想環境の作成

# 仮想環境にパッケージをインストールする場合、ここで仮想環境をアクティベートしなければならない。
# source ./.venv/bin/activate

$ pip install numpy
Collecting numpy
  Using cached numpy-1.21.5.zip (10.7 MB)
  Installing build dependencies ... done
  ...
# 仮想環境がアクティベートされていないため、グローバル環境にパッケージがインストールされてしまっている。

解決方法

環境変数 PIP_REQUIRE_VIRTUALENVtrue を設定する。

$ export PIP_REQUIRE_VIRTUALENV=true

この環境変数が設定されていると、グローバル環境で pip install した場合にエラーとなり、意図せずパッケージがインストールされるのを防ぐことができる。

$ pip install numpy
ERROR: Could not find an activated virtualenv (required).

参考URL

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3