運維工具 fpm實現nginx打包

2021-10-06 19:19:50 字數 2363 閱讀 9021

fpm是乙個ruby實現的對rpmbuild進行封裝的打包工具,方便linux系統下定製軟體包管理,如下為nginx打包示例供參考。

1. 安裝fpm依賴包

yum -y  install ruby-devel gcc make rpm-build rubygems
2.安裝fpm
gem install --no-ri --no-rdoc fpm

fpm --version

3.nginx打包

安裝pcre和openssl包

yum  install pcre pcre-devel openssl openssl-devel

mkdir -p /root/build/src

mkdir -p /root/install/opt

cd /root/build/src/

wget

tar -xvf nginx-1.13.4.tar.gz

cd nginx-1.13.4

./configure --prefix=/root/install/opt/nginx

make && make install

安裝包後執行指令碼(可根據需求定製):
cat /root/build/post-install.sh

#!/bin/bash

useradd nginx -m -s /sbin/nologin

chown nginx:nginx /opt/nginx -r

2.打包

fpm -s dir -t rpm -c /root/install -n nginx -v 1.13.4 \

--license bsd --url "" \

--post-install /root/build/post-install.sh --iteration 1 \

--vendor "[email protected]" \

--description "nginx v1.13.4 build in 2017/08/26" \

-d "pcre,pcre-devel,openssl,openssl-devel"

注:fpm -c 引數下目錄結構為包實際安裝目錄。

當前目錄生成nginx-1.13.4-1.x86_64.rpm包

rpm -ivh nginx-1.13.4-1.x86_64.rpm

[root@centos7-linux build]# rpm -qa| grep nginx

nginx-1.13.4-1.x86_64

[root@centos7-linux build]# ll /opt/nginx/

total 4

drwxr-xr-x. 2 nginx nginx 4096 aug 26 09:01 conf

drwxr-xr-x. 2 nginx nginx 40 aug 26 09:01 html

drwxr-xr-x. 2 nginx nginx 6 aug 26 09:00 logs

drwxr-xr-x. 2 nginx nginx 19 aug 26 09:01 sbin

[root@centos7-linux ~]# rpm -qi nginx

name : nginx

version : 1.13.4

release : 1

architecture: x86_64

install date: sat 26 aug 2017 12:04:42 pm edt

group : default

size : 3755485

license : bsd

signature : (none)

source rpm : nginx-1.13.4-1.src.rpm

build date : sat 26 aug 2017 12:03:55 pm edt

build host : centos7-linux.shared

relocations : /

packager : vendor : [email protected]

url :

summary : nginx v1.13.4 build in 2017/08/26

description : nginx v1.13.4 build in 2017/08/26

結束語:fpm功能較多,此例為簡單打包演示,具體定製請參照官方文件深入。

Cassandra運維工具

轉 一.nodetool命令 cassandranodetool是乙個檢視集群資訊的命令,可以檢視集群統計資訊,節點資訊,資料環資訊,增刪節點,重新整理memtable資料到sstable,合併sstable等 1.nodetool version 用於顯示cassandra當前版本資訊 2.nod...

運維工具體系

發布變更流程管理工具 做為系統介面與其他角色的工作銜接。並提供審批環節控制發布變更的風險。流程管理工具並不負責具體的業務操作的執行,只是作為單據系統跟蹤流程和確保閉環。告警和突發管理工具 體現業務受損的告警自動建單管理。人工確認之後公升級為突發單。通過建單管理告警和突發確保流程的閉環,以及每次故障都...

好用的運維工具

官網 centos yum install epel y yum install python pip python devel y 安裝,需要epel源 yum install y glances 執行glances 通用安裝 要同時安裝依賴項和最新版本只需輸入以下命令列 curl l bin b...