エックスサーバーの共有サーバー環境では、
- システムの Python に制限がある
- pip が使えない
- NumPy のインストールでエラーになる
といった問題が起きることがあります。
目次
前提条件
- エックスサーバー(共有サーバー)
- SSH接続が可能
- python3 が利用できる
- 作業ディレクトリは任意(以下では例として記載)
/home/ユーザー名/ドメイン名/プロジェクト名
手順
1. プロジェクトディレクトリへ移動
既に存在しているプロジェクトディレクトリへ移動します。
cd /home/ユーザー名/ドメイン名/プロジェクト名2. pip なしで仮想環境を作成
エックスサーバーでは、仮想環境作成時に pip が正常に入らないことがあるため、
–without-pip を指定して作成します。
python3 -m venv venv --without-pip3. 仮想環境を有効化
source venv/bin/activateプロンプトに (venv) が表示されれば有効化されています。
4. pip を手動でインストール
Python 3.6 用の get-pip.py をダウンロードします。
curl https://bootstrap.pypa.io/pip/3.6/get-pip.py -o get-pip.py仮想環境の Python を指定して pip をインストールします。
/home/ユーザー名/ドメイン名/プロジェクト名/venv/bin/python get-pip.py5. NumPy をインストール
/home/ユーザー名/ドメイン名/プロジェクト名/venv/bin/python -m pip install numpy6. 不要ファイルの削除
rm get-pip.py7. NumPy のインストール確認
以下のコマンドを実行し、エラーが出なければNumpy OKと表示され成功です。
/home/ユーザー名/ドメイン名/プロジェクト名/venv/bin/python -c "import numpy; print('Numpy OK')"まとめ
- エックスサーバーでは 仮想環境を作り直し、pip を手動導入する方法が安定
- NumPy も共有サーバー上で問題なく利用可能
- システム Python を触らず、プロジェクト内で完結できる


コメント