2017-06-10 10 views
1

私のDjangoサイトはAzureでホストされています。ピローを使わずにPythonでイメージのサイズを変更するには

ユーザーは写真をアップロードできます。システムのサイズを変更し、写真を回転させる方法が必要です。

は、単純なようだ、と私は枕ライブラリを使用しようとしたが、それがローカルに動作しますが、それはいくつかの理由で紺碧のためにデプロイされません。私は必要に応じて具体的にすることができますが、これはよく文書化されています。like here.

私はさらにピローのホイールを取り付けてデプロイしようとしましたが、Azureはそれが間違ったプラットフォームであると言って読み込みを拒否します32ビット)。 64ビットバージョンもアップロードしようとしましたが、何も動作しません。ですから、この時点では、私はちょうど私の後ろに枕を残し、枕なしでPythonでこれを達成するための別の方法を求めています。これを行う他の方法はありますか?私が試したものの

注:

1)枕をインストールする通常の方法は、このおなじみのエラーメッセージが得られます。pip wheel Pillow --wheel-dir=requirements

これを:
ValueError: zlib is required unless explicitly disabled using --disable-zlib, aborting

2)私はその後、実行してホイールを作成しかしpip.logに次のエラーが得られます。
Pillow-3.4.2-cp27-cp27m-win32.whl is not a supported wheel on this platform. Pillow-4.1.1-cp27-cp27m-win32.whl is not a supported wheel on this platform.
私は32ビットplatfでPython 2.7をruningていますことを確信していますormので、なぜその不満を確認していない。

+0

https://docs.scipy.org/doc/scipy-0.18.1/reference/generated/scipy.misc.imresize.html –

答えて

2

に役立ちます願っています。ホイールがプラットフォームと互換性がないためではなく、ピップが古すぎるためではありません。

Azureでは、現時点ではピップバージョン1.5.6を使用している - 恥を彼らに。このバージョンは車輪を認識しません。ここで

は、私がこれを固定する方法である: 後藤クーズーDebugConsole:
https://[site_name].scm.azurewebsites.net/DebugConsole

はあなたのvirtualenvのをアクティブ化します。
env\Scripts\activate

(注)pip --versionを実行する場合、そのバージョン番号がどのように古いという。
python -m pip install -U pip
D:\ Python27のデフォルトのpipはアクセスできないためアップグレードできませんが、仮想環境内のローカルピップをアップグレードすることができます。 pip --versionを実行して、最新バージョン(9.0.1以上)を確実に実行してください。

要件の内部になりました。txtを指定すると、pipに特定のフォルダ内のホイールを検索するように指示することができます。例えば、
--find-links requirements(これは要件フォルダを検索します)。
ここでは、ピローホイールの作成方法を説明します。これはローカルまたはKuduコンソールで実行できます。ローカルで実行する場合は、PythonのバージョンがAzure(2.7または3.X)で使用するものと一致していることを確認し、デフォルトで32ビットバージョンを使用していることを確認してください。
pip install wheel(あなたは、車輪がインストールされていない場合のみ)
pip wheel Pillow --wheel-dir=requirements
これが要件フォルダに2つのファイルをコピーします:枕-X.whlとolefile-X.whl。 git pushを使用してデプロイする場合は、ソースコントロールにこれらが追加されていることを確認してください。これらをサーバーにプッシュします。

は今クーズーDebugConsoleにあなたは.whlファイルが(展開後)がありますテストすることができますし、実行してインストールをテスト: pip install --no-index -r requirements.txt
これは今枕を働き、インストールする必要があります!

Found compatible virtual environment.またはCreating python 2-7 virtual environment.と表示されている場合は、細心の注意を払って配備してください。前者はあなたが望むものです。しかし、後者が表示されている場合は、展開によってenvフォルダが破棄され、1.5.6に戻されます。私はそれが時々なぜこれを行うのか分からないが、これを避けるために配備後にできるだけenvフォルダを少し変更してみてください(つまり、pipをアップグレードしてください)。

0

私は、Azureプラットフォーム上で枕をインストールすると多くのお手伝いをすることはできません。 しかし、手動でサイズ変更やその他のものを使用して私の日はずっと前に消えてしまった。 私はしばらくの間、親指https://thumbor.org/を使用しています。

だけでセットアップ同じのセキュリティで保護されたインスタンスと、サイズを変更する作物と動的にあなたのイメージを管理し、それを使用。

は無駄日後、私は枕がインストールされていない理由を発見したことが

+0

Thumbor [必須ピロー](https://github.com/thumbor/thumbor/blob/7907bd6fa6df55ccd7da724ece674fd996b13626/setup.py#L100)ですので、OPのケースでは役に立ちません。 – knbk

0

他のSOスレッドMicrosoft Azure Django Python setup error Pillowがあります。これには、ピローオンアズールのインストールに関する同様の問題があります。私はそれについての私の答えがあなたの問題を解決するのに役立つと思います。私の解決策に関心があれば、私に知らせてください。

関連する問題