こちらでは、Python コマンドの virtualenv
について解説していきます。
virtualenvは一つのシステム内に複数の開発環境(仮想環境)を作ることができます。
開発するアプリが変わった際に virtualenv
を使って仮想環境を作成するだけで、パッケージ、バージョンの変更ををスムーズに行うことができます。
venvとvirtualenvの違い。
venvはvirtualenvがPython3.3から標準機能として取り込まれたもので、他からソフトウェアをインストールする必要がないため、簡単に仮想環境を作成管理することができます。
ではどのような違いがあるのでしょうか?
venvとvirtualenvの違いはPython自身の管理ができるか否かです。
venvはPython 3.x.x 下に組み込まれた機能なので、Python自体のバージョン管理はできません。
virtualenvはPython自体のバージョンも管理することができます。
virtualenvで作成した仮想環境はPythonの別のバージョンに切り替えることができます。
virtualenvのインストール
sudo pip install virtualenv
Pythonにデフォルトで組み込まれているコマンドではないためインストールする必要があります。
仮想環境を利用するには主に
作成、起動、停止
の三つの手順が必要になります。
新しい環境の作成
まずは新しい仮想環境を作成しましょう。
mkdir プロジェクトディレクトリ名 cd プロジェクトディレクトリ名 python3 -m virtualenv 仮想環境名 or python3 -m virtualenv -p 利用したいPythonのバージョン(例: python3.6) 環境名
まずは専用のプロジェクトディレクトリを作成して移動しましょう。
そしたら、プロジェクトディレクトリの直下に python3 -m virtualenv 仮想環境名 として新しく仮想環境を作成しましょう。オプション -p を使用すればPythonのバージョンを指定することができます。
仮想環境の作成ができました。
仮想環境の起動
仮想環境を作成しただけでは仮想環境を使用することはできません。
起動することで初めて利用できるようになります。
source 仮想環境名/bin/activate
source
コマンドの後に 仮想環境名/bin/activate とすることで、作成した仮想環境を起動することができます。
コマンドラインには以下のように先頭に仮想環境名が書かれていると思います。その状態の時が仮想環境を起動している状態です。
(仮想環境名) $
pythonのバージョンを確認しましょう。
(仮想環境名) $ python -V Python 3.x.x
venvを実行するとコマンドは作成した環境で設定されているバージョンのコマンドが実行されるようになります。
パスの確認
仮想環境の外と中でそれぞれ python3 のパスを確認してみましょう。
which python3
それぞれ違うパスが表示されます。
仮想環境の停止
仮想環境を停止するときは deactivate
コマンドを実行することで仮想環境を終了することができます。
(仮想環境名) deactivate
実行した後に仮想環境名がコマンドラインの先頭から消えていれば、仮想環境を停止することができています。
まとめ
今回はvirtualenvについて解説しました。
virtualenvとvenvには明確な違いがあり、pythonのバージョンを変える場合があるときはvirtualenvを使うようにしましょう。
また、仮想環境を利用するときは
作成、起動、停止
の三つの手順があるのでこれらも覚えておきましょう。
それでは、ログイン後、ハンズオン環境を起動してみましょう。