経緯
2014年9月12日から9月15日まで開催された PyCon JP 2014 の最終日に行ったPyCon JP 2014 Sprintは、 日本マイクロソフト 品川本社セミナールーム に会場をお借りしました。
Azureの事をほとんど理解していなかったので改めて、PaaS版のチュートリアルを行いました。Pythonの追加モジュールを入れてみようと思ったこと、pipが使えない状態でした。
これは、なんとかしたいと思い、 pip と virtualenv を入れてみようと思い、チャレンジしました。
作業方法
以下から、最新版のpipインストールファイルをフォルダダウンロードする。(Azure上にダウンロードしてきてもいい)
https://bootstrap.pypa.io/get-pip.py
pip と virtualenv のインストール
> python get-pip.py --user
> python -m pip install --user virtualenv
以下にインストールされた
C:\DWASFiles\Sites\~1xxxxxxxxxx\AppData\Python
自身のフォルダに、myenv
というPython環境を作る
python -m virtualenv myenv
今後は、以下のpipを使ってモジュールのインストールが可能。と思ったが、どうもうまくいかないみたい。継続調査が必要。
> myenv\Scripts\pip.exe
解説
ユーザが書き込みできない場所に、Pythonがインストールされていると、site-packagesフォルダに新しいモジュールのインストールが出来ずエラーとなります。
最新のpipでは、--user
というオプションが使用できるようになり、自身のホームディレクトリに pipをインストールし、virtualenvも作れるようになります。
これにより、管理者(root)権限などが無くても、virtualenvで自分の好きな場所に、Python環境が作れます。
ただし、今回のAzureの環境では、activateが出来ませんでしたので、毎回フルPath指定でPythonなどを呼ぶ必要があります。(Windowsだと環境変数がグローバルに影響を与えるからか??などの条件があるようです)
謝辞
パッケージング周りでは日本で一番詳しく、世界中探しても指で数えられるくらい上位にいると思われる、 @aodag さんに助けていただきました。