Help us understand the problem. What is going on with this article?

Windows Azure の Webサイト作成(Djangoプロジェクト)で pipインストールを可能にする

More than 5 years have passed since last update.

経緯

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 さんに助けていただきました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした