pythonパッケージをローカルミラーのPyPiリポジトリからダウンロードすることを強制されます。これを行うには、-i
および--trusted-Host
オプションを使用します。インストールコマンド全体は次のようになります。
pip install -i https://sampleurl.com/pypi-remote/simple --trusted-Host sample.Host.com package_name
毎回そのオプションを入力しなければならないのはちょっと面倒ですが(実際には長いURLです)。次の内容でget_package.batファイルを作成しようとしました(Windows 10で作業しています)。
pip install -i https://sampleurl.com/pypi-remote/simple --trusted-Host sample.Host.com "%1"
完全に正常に動作しますが、pip searchコマンドを実行したい場合、install
コマンドがハードコーディングされており、search
で使用する方法がないため、役に立たないことがわかりました。
追加オプションなしでpip install package_name
またはpip search package_name
を実行できるように、デフォルトでミラーリポジトリからダウンロードするようにpipを設定する方法はありますか?
最終的には、次のような2つのパラメータを取る.batファイルを作成してみることができます。
pip %1 -i https://sampleurl.com/pypi-remote/simple --trusted-Host sample.Host.com "%2"
しかし、これを行うにはもっと「エレガントな」方法があるのだろうか。
ユーザーレベルまたはグローバルレベルで pip config を使用します。私は/etc/pip.conf
を次のように構成しています:
[global]
index=http://my-company/nexus/repository/pypi-group/pypi
index-url=http://my-company/nexus/repository/pypi-group/simple
trusted-Host=my-company
ただし、ユーザーレベルまたはグローバルレベルでpip config
を使用して、次のように構成できます。
pip config --user set global.index http://my-company/nexus/repository/pypi-group/pypi
pip config --user set global.index-url http://my-company/nexus/repository/pypi-group/simple
pip config --user set global.trusted-Host my-company
--index-url
は pip install によって使用されます--index
は pip search によって使用されます