インストール¶
サポートシェル¶
virtualenvwrapper は Bourne シェル互換の構文をもつ一連のシェル 関数 です。Mac OS X と Linux 環境の、次のシェルで自動テストを行っています。
bash
ksh
zsh
その他のシェルでも動作するかもしれません。ここに記載されていないシェルで動作するのを発見したら私に教えてください。また、その他のシェルでも動作するように virtualenvwrapper を全く違うものに書き換えずに修正できるなら、 bitbucket のプロジェクトページ から pull リクエストを送ってください。あなたが非互換なシェル上で動作させるクローンを作成するなら、このページでリンクを張るので私に連絡してください。
MSYS¶
Python を Windows ネイティブにインストールした MSYS 環境でも virtualenvwrapper が使えます。そのためには、インストールした MSYS 環境へのルートパスを MSYS_HOME
という環境変数で定義する必要があります。
export WORKON_HOME=$HOME/.virtualenvs
export MSYS_HOME=/c/msys/1.0
source /usr/local/bin/virtualenvwrapper.sh
または:
export WORKON_HOME=$HOME/.virtualenvs
export MSYS_HOME=C:\msys\1.0
source /usr/local/bin/virtualenvwrapper.sh
MSYS の設定によります。 MSYS_HOME/bin
フォルダーに MSYS mktemp binary をインストールする必要があるかもしれません。
PowerShell¶
Guillermo López-Anglada は、Microsoft の PowerShell 環境で実行できるように virtualenvwrapper を移植しました。それは他の拡張機能と互換性がなく、(機能拡張というよりは) 大幅な再実装であることから、別に配布するようにしました。 virtualenvwrapper-powershell は、PyPI からダウンロードできます。
Python バージョン¶
virtualenvwrapper は Python 2.4 - 2.7 でテストされています。
基本的なインストール¶
virtualenvwrapper は、virtualenv がインストールされているグローバルな site-packages ディレクトリと同じところにインストールする必要があります。それを行うには、管理者特権が必要になるかもしれません。最も簡単なインストール方法は pip を使うことです。
$ pip install virtualenvwrapper
または:
$ sudo pip install virtualenvwrapper
Warning
virtualenv を使うと、たくさんの独立した Python 環境を作成できます。システム環境に依存する全ての Python 環境から同じパッケージを共有できるように、システムにインストールされている Python (virtualenv がアクティブではない) に virtualenv と virtualenvwrapper の2つだけはインストールする必要があります。
グローバルの site-packages ディレクトリにインストールする代わりに ユーザーのローカルディレクトリ (普通は ~/.local) にインストールできます。
$ pip install --install-option="--user" virtualenvwrapper
シェルの起動ファイル¶
シェルの起動ファイル (.bashrc
, .profile
など) に、仮想環境を構築する場所、開発中のプロジェクトディレクトリの場所、virtualenvwrapper がインストールしたシェルスクリプトの場所の3行を追加してください。
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh
編集後に起動ファイルを再読み込みしてください (例えば source ~/.bashrc
を実行する) 。
クイックスタート¶
workon
を実行する- 仮想環境のリストが表示されるか、何も表示されない
mkvirtualenv temp
を実行する- 新たな仮想環境
temp
が作成されてアクティブ化される workon
を実行する- このときに
temp
の仮想環境が提供される
設定¶
virtualenvwrapper は、環境変数を変更することでカスタマイズできます。 virtualenvwrapper.sh
が読み込まれる 前の シェルの起動ファイルで環境変数を設定してください。
仮想環境の場所¶
環境変数 WORKON_HOME
は、virtualenvwrapper が使う仮想環境の場所を指定します。デフォルト設定は $HOME/.virtualenvs
です。virtualenvwrapper が読み込まれたときにそのディレクトリが存在しない場合は、自動的に作成されます。
プロジェクトディレクトリの場所¶
環境変数 PROJECT_HOME
は、virtualenvwrapper が使うプロジェクトのワークディレクトリの場所を指定します。この環境変数は mkproject を利用する前に設定して、そのディレクトリを作成しておく必要があります。
See also
プロジェクトのリンクファイル名¶
環境変数 VIRTUALENVWRAPPER_PROJECT_FILENAME
は、virtualenvwrapper が使う、プロジェクトのワークディレクトリに対して virtualenv をリンクするファイル名を指定します。
See also
フックスクリプトの場所¶
環境変数 VIRTUALENVWRAPPER_HOOK_DIR
は、virtualenvwrapper が使う ユーザー定義のフック が保存される場所を指定します。デフォルト設定 $WORKON_HOME
です。
See also
フックログの場所¶
環境変数 VIRTUALENVWRAPPER_LOG_DIR
は、virtualenvwrapper のフックローダーが書き込むログの場所を指定します。デフォルト設定 $WORKON_HOME
です。
Python インタープリターと virtualenv と $PATH¶
起動ファイルの読み込み時に virtualenvwrapper.sh
は、最初に $PATH
上の python
と virtualenv
を見つけて、後で使うためにその情報を覚えておきます。これは virtualenvwrapper がインストールされていない、または別のバージョンの virtualenv がインストールされた仮想環境内部でインタープリタを有効にしていながら $PATH
変更による競合が起こらないようにします。この動作の理由は virtualenvwrapper.sh
を source する 前に 設定された $PATH
が重要だからです。
例えば:
export PATH=/usr/local/bin:$PATH
source /usr/local/bin/virtualenvwrapper.sh
$PATH
の探索を上書きするには、
利用するインタープリターのフルパスを指定した VIRTUALENVWRAPPER_PYTHON
と、
利用する virtualenv
バイナリ指定した VIRTUALENVWRAPPER_VIRTUALENV
のフルパスを設定してください。
両方の環境変数は virtualenvwrapper.sh
が source される前に 設定する必要があります 。
例えば:
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
virtualenv のデフォルト引数¶
VIRTUALENVWRAPPER_VIRTUALENV
で指定されたアプリケーションが引数を取るなら、その引数を VIRTUALENVWRAPPER_VIRTUALENV_ARGS
に設定できます。この環境変数は virtualenv
に渡すデフォルト引数を設定するのにも使えます。例えば、システムの site-packages
ディレクトリと独立した仮想環境を毎回新たに作成するには、 --no-site-packages
をその値として設定します。
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'
一時ファイル¶
virtualenvwrapper は $TMPDIR
に一時ファイルを作成します。その環境変数がセットされていない場合は /tmp
を使用します。virtualenvwrapper 向けだけの一時ファイルの作成場所を変更するには VIRTUALENVWRAPPER_TMPDIR
をセットしてください。
サイト全体の設定¶
ほとんどの UNIX システムは、全てのユーザーに設定を適用する機能を提供します。これは典型的に2つの方法のいずれかを取ります。新しいアカウントの作成時の skeleton ファイルを編集するか、シェルのグローバルな起動ファイルを編集するかです。
新しいアカウントの作成時にスケルトンファイルを編集する方法は、各ユーザーが virtualenvwrapper を読み込むようにあらかじめ設定された自分たちの起動ファイルをもちます。各ユーザーは、起動ファイルの該当行をコメントアウトしたり、削除することで設定を無効にできます。編集する必要のある適切なファイルを把握するには、オペレーティングシステム、またはシェルのドキュメントを参照してください。
特定シェルのグローバルの起動ファイルを変更する方法は、そのシェルの全ユーザーに対して virtualenvwrapper が有効となり、各ユーザーが無効にすることはできません。編集する必要のある適切なファイルを把握するには、オペレーティングシステム、またはシェルのドキュメントを参照してください。
2.9 へのアップグレード¶
バージョン 2.9 は、それまで別で配布していた virtualenvwrapper.project
の機能を提供します。そのプロジェクト拡張の古いバージョンをインストールしているなら、アップグレード前にそれらを削除してください。
1.x からのアップグレード¶
ラッパー関数を含むシェルスクリプトは 2.x バージョンで bash 以外のシェルをサポートするためにその名前が変更されました。あなたの起動ファイルの source /usr/local/bin/virtualenvwrapper_bashrc
を source /usr/local/bin/virtualenvwrapper.sh
へ変更してください。