2017-02-06 4 views
0

私はpycryptoboto3およびpyYamlに依存するpythonスクリプトを持っています。厳密には技術的ではなく、インターネットにアクセスすることさえできないクライアントにこのスクリプトを提供する必要があります。すべてのpython依存関係をfatjarのようなzipファイルに束縛

クライアントがすべてzipファイルを抽出して、すぐに彼のためにスクリプトを使用できるように、すべてをまとめてパッケージ化する方法はありますか?また、スクリプトはWindows/Mac/Linuxで実行できるはずで、それぞれ独自の.zipファイルを持つこともできます。

私はpip,requirements.txtおよびsetuptoolsでこれまでに仕事をしてきましたが、これほど初歩的なことは一度もありませんでした。これを達成する最良の方法は何ですか?

答えて

2

Windowsにデプロイする場合は、py2exeを使用すると、スタンドアロンの実行可能ファイルを作成できます。 -c--bundle-filesオプションを探します。これらのオプションを組み合わせると、実行可能ファイルとともに圧縮されたアーカイブにファイルがバンドルされます。

Macにデプロイする場合は、代わりにpy2appを試してください。

私の経験では、このようなバンドル業者は、少なくともいくつかの手品と実験を必要としています。一部の一般的なPythonパッケージ(PIL/Pillow、lxml、numpy、pandas、ネイティブCランタイムを必要とするもの)は、バンドルツールと混在したときに問題が発生する可能性があります。だからではなく、技術的でない顧客に配送するだけです。テストし、必要に応じて出荷前に調整します。

これは、Pythonコードをインストールまたは配布する方法の完全なリストではありません。いくつかの他from vinta's awesome python list

関連する問題