基于FPM制作nginx RPM包
环境
| 系统 | 其它 | 
|---|---|
| CentOS 7.5 | 需提前配置好epel | 
配置
[root@localhost ~]# yum clean all && yum makecache
#重建yum元数据
FPM安装
[root@localhost ~]# yum install -y ruby rubygems ruby-devel
#
[root@localhost ~]# gem sources -a http://mirrors.aliyun.com/rubygems/
#添加阿里云的ruby仓库
http://mirrors.aliyun.com/rubygems/ added to sources
[root@localhost ~]# gem sources -l
*** CURRENT SOURCES ***
https://rubygems.org/
http://mirrors.aliyun.com/rubygems/
[root@localhost ~]# gem sources --remove https://rubygems.org/
#移除原生ruby仓库(在国外,速度慢)
https://rubygems.org/ removed from sources
[root@localhost ~]# gem sources -l
*** CURRENT SOURCES ***
http://mirrors.aliyun.com/rubygems/
[root@localhost ~]# gem update --system
#升级rubygems版本,可能会提示“ERROR:  Error installing rubygems-update:rubygems-update requires Ruby version >= 2.3.0.”
[root@localhost ~]# gem install rubygems-update -v 2.3.0
#升级rubygems的版本
[root@localhost ~]# gem update --system
#再次升级
[root@localhost ~]# gem install fpm
#安装FPM包,比较慢
[root@localhost ~]# ls
nginx-1.14.2.tar.gz
[root@localhost ~]# tar zxf nginx-1.14.2.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/nginx-1.14.2/
[root@localhost nginx-1.14.2]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module && make && make install
#编译安装nginx
- 创建软件包安装完成之后要运行的脚本
[root@localhost nginx-1.14.2]# vim nginx.sh
    #!/bin/bash
    useradd -M -s /sbin/nologin nginx
    #创建运行的用户
    ln -s /usr/local/nginx/sbin/nginx /sbin/
    #链接二进制文件
    echo success > /usr/local/nginx/html/index.html
    #测试页面
    nginx
    #启动服务
- 将nginx源码包打成rpm类型
[root@localhost ~]# yum install -y rpm-build
#会用到该工具
[root@localhost ~]# fpm -s dir -t rpm -n nginx -v 1.14.2 -d 'pcre-devel,zlib-devel' -f --post-install /root/nginx.sh /usr/local/nginx/
#-s表示源类型是一个目录,即/usr/local/nginx
#-t目标类型是rpm包
#-n包的名字
#-v包的版本号
#-d所依赖的包
#-f第二次包时目录下如果有同名安装包存在,则覆盖它
#--post-install软件包安装完成之后要运行的脚本
[root@localhost ~]# ls
nginx-1.14.2-1.x86_64.rpm
[root@localhost ~]# rpm -ivh nginx-1.14.2-1.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...
   1:nginx-1.14.2-1                   ################################# [100%]
[root@localhost ~]# netstat -lnpt | grep nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      64244/nginx: master
over……
基于FPM制作nginx RPM包的更多相关文章
- fpm定制化RPM包之nginx rpm包的制作
		fpm定制化RPM包之nginx rpm包的制作 1.安装ruby模块 # yum -y install ruby rubygems ruby-devel 2.添加阿里云的Rubygems仓库,国外资 ... 
- FPM制作Nginx的RPM软件包
		FPM制作Nginx的rpm软件包 FPM相关参数-s:指定源类型-t:指定目标类型,即想要制作为什么包-n:指定包的名字-v:指定包的版本号-C:指定打包的相对路径-d:指定依赖于哪些包-f:第二次 ... 
- FPM简介(定制rpm包)
		FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ... 
- Linux基于FPM制作RPM包(以Nginx为例)
		1.搭建Epel Yum源 安装在线yum源 [root@localhost ~]# rpm -ivh epel-release-latest-.noarch.rpm //安装扩展源 [root@ ... 
- 基于FPM制作RPM软件包!
		工作中有如下情况需要将文件打包rpm: 避免重复工作,将源码程序打包为rpm 使用yum发布项目,项目打包为rpm 将自己写好的程序打包为rpm,提供给用户下载 其他 以前打包rpm是一个非常复杂的一 ... 
- fpm打包神奇rpm包升级python2.7.16
		fpm打包神器参考文档:https://www.cnblogs.com/flintlovesam/p/6594635.html FPM的安装:安装ruby环境和gem命令: yum -y instal ... 
- Centos下安装nginx rpm包
		1 在nginx官方网站下载一个rpm包,下载地址是:http://nginx.org/en/download.html wget http://nginx.org/packages/centos/6 ... 
- fpm  打包跨平台rpm 包的一个问题
		平时我们开发机器可能使用的是mac 系统,但是部署机器kennel是linux,默认会有一个操作系统的问题, 我们可以在打包的时候指定os版本信息 参考 --rpm-os linux 参考例子 一个构 ... 
- fpm 制作 rpm 包
		支持的 源类型包 ① dir : 将目录打包成所需要的类型, 可用于源码编译安装软件包 ② rpm : 对 rpm 包进行转换 ③ gem : 对 rubygem 包进行转换 ④ python : 将 ... 
随机推荐
- nginx漏洞分析与升级修复
			一 .此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] nginx安全公告(CVE-2018-16843,CVE-2018-16844)在nginx HTTP / 2实 ... 
- openlayers4 入门开发系列之船讯篇
			前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ... 
- Windows Server 2016-命令行方式管理Windows服务
			Microsoft Windows 服务(过去称为 NT 服务)允许用户创建可在其自身的 Windows 会话中长时间运行的可执行应用程序. 这些服务可在计算机启动时自动启动,可以暂停和重启,并且不显 ... 
- Python后台开发Django(会话控制)
			页面跳转 页面跳转的url中必须在最后会自动添加[\],所以在urls.py的路由表中需要对应添加[\] from django.shortcuts import redirect #导入 retur ... 
- 03 JVM 从入门到实战 | 简述垃圾回收算法
			引言 之前我们学习了 JVM 基本介绍 以及 什么样的对象需要被 GC ,今天就来学习一下 JVM 在判断出一个对象需要被 GC 会采用何种方式进行 GC.在学习 JVM 如何进行垃圾回收方法时,发现 ... 
- ConfirmCancelUtilDialog【确认取消对话框封装类】
			版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 对确认取消对话框的封装. 前提:调用对话框的Activity必须继承FragmentActivity及其子类(比如AppCompat ... 
- 聊聊在AOP模式下的缓存方案
			面向方法的数据集缓存 使用了autofac做为ioc容器,使用Autofac.Extras.DynamicProxy2作为方法拦截器,缓存面向方法,直接在方法上添加CachingAttribute特性 ... 
- 【Python3爬虫】使用异步协程编写爬虫
			一.基本概念 进程:进程是一个具有独立功能的程序关于某个数据集合的一次运行活动.进程是操作系统动态执行的基本单元. 线程:一个进程中包含若干线程,当然至少有一个线程,线程可以利用进程所拥有的资源.线程 ... 
- 并发系列(3)之 CLH、MCS 队列锁简介
			这篇博客主要是作为 AbstractQueuedSynchronizer 的背景知识介绍:平时接触也非常的少,如果你不感兴趣可以跳过:但是了解一下能更加的清楚 AQS 的设计思路: 一.自旋锁简介 通 ... 
- (二)surging 微服务框架使用系列之surging 的准备工作consul安装
			suging 的注册中心支持consul跟zookeeper.因为consul跟zookeeper的配置都差不多,所以只是consul的配置 consul下载地址:https://www.consul ... 
