プログラミングを開発するときには、開発環境を用意する必要があります。
基本的には必要な言語やその実行環境を用意する必要があるのですが、ここではさらに一段上の仮想環境の用意に踏み込んで説明していきます。
仮想環境がなぜ必要なのか?
開発をしていると、作りたいものによって使用するモジュール(ライブラリ)のバージョンが異なったり、依存関係が発生することがあります。
1つのアプリだけに集中している場合は気にならないのですが、長いことやっていると「このライブラリのバージョンあげたいなあ」となっても「これが消せない・・・」などライブラリのバージョン管理に悩まされることが多いのです。
そこでPythonでは自分で閉じた環境(=これを仮想環境という)を作り、そこに好きなだけモジュールを入れようという仕組みを用意してくれています。これにより複数の環境を簡単に持つことができ、コマンド一つで環境感を行ったり来たりすることができます。
今回はPythonの中でもスタンダードなvirtualenv
の使い方を見ていきます。なおPythonにはvirtualenv
以外にもいくつかの仮想環境管理ツールが用意されているようです。
- Pythonの仮想環境構築(2017年版) pyenvとpyenv-virtualenvとvirtualenvとvirtualenvwrapperとpyvenvとvenv - Qiita
- Pythonの仮想環境構築 2017.01版 - YAMAGUCHI::weblog
virtualenvを使って見る
virtualenvのダウンロード
公式サイトはこちら Installation — virtualenv 15.1.0 documentation
インストールにはpip1.3かそれ以上が必要です $ [sudo] pip install virtualenv ※sudoは必要に応じてつけてください ※proxy経由の方はこちら $ [sudo] https_proy=https://user:password@proxy.hoge.jp:port pip install virtualenv proxy配下のpipはここで記事書きました [http://gintec.hatenablog.com/entry/2017/07/07/110630:embed:cite]
使って見る
仮想環境の作成
公式 User Guide — virtualenv 15.1.0 documentation
基本コマンドはこちらです。
$ virtualenv ENV
ENV
は新しい仮想環境を作るためのディレクトリを示します。 適当なディレクトリで作業しましょう。
$ mkdir test ; cd test $ virtualenv .
シェルスクリプトのアクティベート
PATH変数やPS1などを読み込みましょう。
$ source bin/activate (test) test $
なお抜け出す(キャンセルする)際にはdeactivate
と打てば終了できます。
不要になった環境はrm -r 作成したディレクトリ
で消してしまいましょう。
パッケージのインストール
仮想環境が出来上がったので好きなだけ、好きなパッケージを入れましょう。
$ pip install boto3 $ pip list | grep boto3 boto3 (1.4.4)
うまいこと入りましたね!