2017-08-22 1 views
0

プロジェクトで使用されているすべてのpipパッケージの.tar.gzファイルを作成する方法を知りました。ユーザーがアプリケーションをセットアップすると、プロジェクトはインターネットにアクセスできなくなります。ですから、すべての必要なパッケージを含む.tar.gzファイルを作成するのが最も簡単ですが、ユーザーはsetup.pyファイル(例)やそれらの行に沿ったものを抽出してインストールするだけです。ありがとうプロジェクトで使用されているすべてのpipパッケージの.tar.gzファイルを作成するにはどうすればよいですか?

+0

私は[pip2pi](https://github.com/wolever/だと思いますが、このようなアーカイブからインストールすることができます

$ tempdir=$(mktemp -d /tmp/wheelhouse-XXXXX) $ pip wheel -r requirements.txt --wheel-dir=$tempdir $ cwd='pwd' $ (cd "$tempdir"; tar -cjvf "$cwd/bundled.tar.bz2" *) 

pip2pi)はあなたの目的を十分に果たします。それはあなたが必要とするように聞こえる関連ツールpip2tgzを持っています。 – ajoseps

+2

[依存関係のあるPythonプロジェクトをパッケージ化する標準的な方法は何ですか?](https://stackoverflow.com/questions/38243682/whats-the-standard-way-to-package-a-python-project-with依存関係) –

+0

ねえ、ありがとうございました@ajosepsそれはうまくいった! –

答えて

0

私も同様の使用例がありましたが、pip wheelを使って実現しました。ピップホイールを使用すると、すべてのコンパイルが完了したプロジェクトの依存関係をすべて1つのアーカイブにまとめることができます。

これは、@ajosepsによって上記のものよりも、私のユースケースの方がより簡単で適切なアプローチであることがわかりました。

$ tempdir=$(mktemp -d /tmp/wheelhouse-XXXXX) 
$ (cd $tempdir; tar -xvf /path/to/bundled.tar.bz2) 
$ pip install --force-reinstall --ignore-installed --upgrade --no-index --no-deps ${tempdir}/* 

出典:https://pip.pypa.io/en/stable/user_guide/#installation-bundles

関連する問題