1

私はインストーラーに不慣れで、これまでインストールするアイテムの行ごとのリストを手動で実行してきました。明らかに、これはスケーラブルなアプローチではありません。特に、同じ人ではなく、定期的に新しいサーバーをインストールする必要がある場合はそうです。

現在、Yum経由で約30個のパッケージをインストールする必要があります(mySQLのような大きなパッケージから小さな70KBのランダムなパッケージまで)他のパッケージを手動でインストールします(基本的に「pythonsetup.pyinstall」コマンドであるPythonパッケージ)いくつかのディレクトリを作成し、いくつかを変更します権限など。

これを自動的に行うものを作成するための最良の方法は何ですか。クライアントサーバーにYumがあるとは限らないので、すべてのバイナリと依存関係をダウンロードして、スクリプトにインストールさせる必要がありますか?

私はこれが質問の誤謬であることを知っています。誰かがこれのための良いチュートリアルを知っていますか?

4

2 に答える 2

4

一度にいくつかの質問をしているので、Pythonライブラリのパッケージ化とインストールについて説明します...

を使用setup.pyすると、PythonパッケージをRPMに変換して、yumを使用して任意のRed Hat/CentOSボックスにインストールできます。これが私の仕事ですべてのパッケージを内部的にインストールする方法です。Foundationrpmbuildユーティリティがインストールされていると仮定すると、次のように簡単です。

python setup.py bdist_rpm

これにより、パッケージのRPMがdistフォルダーに作成されます(例dist/mypackage-1.01-1-noarch.rpm)。次に、このRPMを内部yumミラー(内部ミラーがある場合)に追加するだけで、そこからパッケージを内部ホストに簡単に配布できます。

于 2010-08-31T20:38:10.700 に答える
2

必要なパッケージに応じてRPMパッケージを作成できます。
http://fedoraproject.org/wiki/PackageMaintainers/CreatingPackageHowTo(Fedoraの場合、ただしRHEL / CentOSの場合も同じです)

基本的に、.specファイルには次のような行があります。
Requires: mysql-server, httpd, php

したがって、これをyumミラーに追加できます(1つあると仮定します)。そうすれば、インストールを実行している人は誰でも実行できyum install server-setup、必要なすべてのパッケージが自動的に取り込まれます。ジャサニズムが言ったように、setup.pyスクリプトからRPMを作成し、それらをミラーに配置して、メタパッケージをそれらのRPMに依存させることができます。

また、Debianシステムが使用されている可能性がある場合は、Debianパッケージを実行することもできます。

于 2010-08-31T20:48:34.837 に答える