1.下载nginx源码包

wget http://nginx.org/download/nginx-1.20.1.tar.gz

2.更新yum软件源

yum update

3.下载编译工具和依赖

yum install -y gcc pcre-devel pcre zlib zlib-devel

4.解压tar包

tar -zxvf nginx-1.20.1.tar.gz -C ~/

5.进入源码文件配置编译信息

# --prefix后面加的是绝对地址 意思是编译安装后软件输出的位置
./configure --prefix=/opt/nginx

6.编译&编译安装

make && make install

7.安装RAM密钥

command curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
command curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -

8.安装RAM

curl -L get.rvm.io | bash -s stable

9.更新RAM的配置文件

source /etc/profile.d/rvm.sh

10.安装Ruby2.6

rvm install 2.6

11.查看ruby是否安装成功

ruby -v

12.安装fpm依赖模块

yum -y install rubygems ruby-devel

13.更换rubygems仓库

gem sources -a  http://mirrors.aliyun.com/rubygems/
gem sources --remove https://rubygems.org/
gem source list

14.安装fpm工具

gem install fpm

15.检查fpm是否正确安装

fpm --help

16.编写shell文件

vim /root/rpm_building/ngnix_rpm.sh
#!/bin/bash# 源码编译一般都要添加执行用户
useradd nginx -M -s /sbin/nologin

9.打包

打包格式:
fpm -s 源文件类型 -t 目标文件类型 -n 打包后名称 -v 打包后版本号 -d 所需要依赖 --post-install 安装完后执行的脚本 -f 源文件地址

fpm -s dir -t rpm -n nginx -v 1.20.1 -d 'pcre-devel,openssl-devel' --post-install /root/rpm_building/ngnix_rpm.sh -f /opt/nginx/

参数说明:

1.-s 指定源类型
2.-t 指定目标类型,即想要制作为什么包
3.-n 指定包的名字
4.-v 指定包的版本号
5.-d 指定依赖于哪些包
6.-f 第二次打包时目录下如果有同名安装包存在,则覆盖它
7.–post-install 软件包安装完成之后所要运行的脚本;同–after-install

可能会出现的错误:

  • Need executable ‘rpmbuild’ to convert dir to rpm {:level=>:error}

解决办法:安装rpm-build

yum install rpm-build -y

Nginx打包RPM(FPM工具)相关推荐

  1. 银河麒麟高级服务器v10 sp2 下fpm工具打包rpm

    一.当前操作系统版本 二.安装fpm 2.1 安装ruby及依赖 yum install ruby rubygems ruby-devel rpm-build 2.2 添加阿里云rubygems仓库 ...

  2. 项目打包rpm包(rpmbuild)

    这里以python项目为例,通过rpmbuild工具打包成rpm包,并进行安装验证 rpmbuild打包 rpm流程 构建rpmbuild打包目录 rpmbuild 默认变量配置文件 将我们的pyth ...

  3. docker 不包含依赖 打包_docker源码打包RPM

    docker打包rpm 在完成了docker代码的编写和测试之后,如何发布docker程序?在centos上,一般使用RPM包进行打包.本文主要 RPM主要包括两种,一种是以二进制代码发布,一种是以源 ...

  4. CentOS7 打包RPM 升级OpenSSH8.3

    目录 一.源码包 二.打包RPM 2.1.准备阶段 2.2.打包排错阶段 三.升级 漏扫设备发现OpenSSH有漏洞,需要升级到OpenSSH 8.1及以上版本,那么干脆就直接升级到发文时最新的版本, ...

  5. Linux内网离线安装nginx(rpm包安装方式)

    1.下载RPM离线安装包: 首先,先下载nginx的rpm包,下载地址:http://nginx.org/packages/centos/7/x86_64/RPMS/ 下载nginx-1.18.0-2 ...

  6. Centos7.3 卸载 Nginx(彻底卸载) 并重新安装 Nginx(RPM源yum安装)

    卸载nginx 首先输入命令 ps -ef | grep nginx检查一下nginx服务是否在运行.如果在运行就停止运行,需要在nginx的安装目录下的sbin执行,如果配置了环境就不需要了: ./ ...

  7. asar软件包linux,ASAR文件查看打包解包工具下载-ASAR文件查看打包解包工具v2018.07.12免费版-ucbug软件站...

    ASAR文件查看打包解包工具是一款能够帮助用户对ASAR文件进行管理的工具,通过ASAR文件查看打包解包工具能够对文件进行查看.打包.解包等功能,有需要的可以下载使用. 功能介绍 electron的a ...

  8. CentOS下使用rpm-build制作nginx的RPM包

    一.RPM包的分类 RPM有五种基本的操作功能:安装.卸载.升级.查询和验证. linux软件包分为两大类: (1)二进制类包,包括rpm安装包(一般分为i386和x86等几种) (2)源码类包,源码 ...

  9. linux打包解压工具,打包压缩、解压缩工具详解

    本文旨在学习打包,压缩,解压缩.学习使用tar.gzip/gunzip/zcat.bzip2/bunzip2/bzcat.xz/unxz/xzcat.zip/unzip.cpio等命令的使用. 前言: ...

  10. rpmbuild打包rpm

    一.rpmbuild及rpm rpm          rpm命令 是RPM软件包的管理工具.rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功 ...

最新文章

  1. Selenium + Nightwatch 自动化测试环境搭建
  2. flume的安装和部署
  3. 在用虚拟机做Windows Server 2008 R2实验时应注意的问题
  4. stack与queue
  5. eclipse如何快速查找某个类
  6. 洛谷 一种堆套路 P1631序列合并、P2085最小函数值
  7. 调用父类方法而非直接设置父类属性
  8. camera (13)---智能手机双摄像头工作原理详解:RBG +RGB, RGB + Mono
  9. 敏捷开发一千零一问系列之十一:需求谁做主?
  10. SharePoint 2010 technology stack
  11. 还为重复安装开发环境而烦吗? 这或许是更好的解决方案 —— docker
  12. 在mac中配置apache+php5.3+mysql的环境,修改hosts
  13. html mysql查询_mysql查询
  14. 机器人系统辨识——基于MATLAB的非线性系统辨识
  15. CentOS7系统中:安装tree命令的问题
  16. 2016年华为优招面试经验
  17. python入门笔记——面向对象基础1_5(小明爱跑步案例)
  18. c语言系统时间的结构体变量,C语言中的系统时间结构体类型
  19. 阿里云OS 2012(天语W806大黄蜂)破解教程/ROOT教程(一键破解法)
  20. python基于pygame实现跨年烟花效果

热门文章

  1. MySQL 入门(七)—— 视图
  2. TIA protal与SCL从入门到精通(1)——SCL编程入门
  3. sqlserver2010教程百度云盘_SQLServer数据库基础教程(72集),全套视频教程学习资料通过百度云网盘下载...
  4. java编译异常有哪些_java编译时异常有哪些?java常见异常有哪些?
  5. JavaScript表单提交
  6. 内核驱动系列--内核调试方法
  7. c语言上机字符串,二级C语言上机题库100套(最新)
  8. 数据传输类型与通信方式
  9. Flash网页游戏开发
  10. Git生成并添加SSH key[并添加到Github]