FPMインストール処理
Rubyサポートモジュールをインストール
yum install Ruby rubygems ルビー開発-y
Alibaba Cloudのrubygems倉庫を追加、外国ソースは遅い
gemソース -a
ソースruby倉庫を削除
gemソース --remove
fpmをインストール
ジェムインストールfpm -v 1.4.0
エラー:
エラー: fpmのインストール中にエラーが発生しました:
jsonはRubyバージョン>= 1.9.3.
このエラーと同様に、多くのネチズンはrubyのアップグレードを推奨しています。実際には、fpm や Ruby の問題ではなく、システムの JSON のデフォルトのバージョンが高すぎるため、Ruby 1.8 になっているためです。 .7 では対応できないので、json のバージョンを下げる必要があります
gem install json -v 1.8.3
json をインストールしたら、fpm をインストールするだけです
なお、centos7 ではデフォルトの Ruby のバージョンです。
共通パラメータ:
-s は dir などのソースタイプを指定します -t は rpm などのターゲットタイプを指定します -n はパッケージ名を指定します
-v はバージョン番号を指定しますpackage
-C パッケージを指定します 相対パス -d 依存するパッケージを指定します
-f 2回目のパッケージング時にディレクトリ内に同名のパッケージがあった場合は上書きされます
-pインストールパッケージのディレクトリを出力します。指定されていない場合は、現在のディレクトリになります
--post -install ソフトウェアパッケージのインストール後に実行されるスクリプトは、次と同じです: --after-install
- pre-install ソフトウェアパッケージをインストールする前に実行するスクリプトは、--before-install
--post-uninstall ソフトウェアパッケージのアンインストール後に実行するスクリプトは、--afterと同じです。 -remove
--pre-uninstall ソフトウェアパッケージがアンインストールされる前に実行されるスクリプトは次と同じです: --before-remove
fpm コマンドは実際には rpmbuild コマンドです カプセル化の場合、下位レベルは実際には rpmbuild ですコマンドを使用するため、システムには rpmbuild コマンドが必要です。 FPM コマンドが実行できない場合は、Yum Install RPM-BUILD -Y
パッキングコマンド 例:
fpm -s dir -t rpm -n nginx -v 1.6.3 -d 'pcre-devel,openssl-devel' --post-install /home/root/scripts/nginx.sh /usr/local/nginx-1.6.3/
/usr/local/nginx-1.6.3/ 为nginx的安装目录
/home/root/scripts/nginx.sh 为nginx安装后要执行的脚本,如创建用户、创建软链接
で RPM-BUILD がインストールされているかどうかを確認できます。
. パスをパッケージ化する場合は、絶対パスを使用することをお勧めします
2. ソフトリンクをパッケージ化する場合は、/ の後に / を含めることをお勧めします。 、それはソフトリンクファイルを指し、/はディレクトリを指します