基于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 : 将 ...
随机推荐
- Java 处理PDF图章(印章)——图片图章、动态图章
图章(印章)是一种在合同.票据.公文等文件中表明法律效应.部门机关权威的重要指示物,常见于各种格式的文件.文档中.对于纸质文档可以手动盖章,但对于电子文档,则需要通过特定的方法来实现.本篇文档分享通过 ...
- 01 Java jdk环境配置
1.1 书籍(B) [1] java核心技术 [2] 实战java 1.2 网址(B) oracle.com http://www.ibm.com/developerWorks/cn/ https:/ ...
- 安卓开发笔记(十三):SQLite数据库储存(下)数据的增添,更改,删除,查询
SQLite数据库存储(下) 1.增添数据 对于添加数据的话我们只需要在主活动当中import新的包以及在主活动当中写上适当的代码就可以了,不需要在我们之前创建新的类当中书写新的代码.现在的主活动 ...
- 【转载】 Sqlserver中查看自定义函数被哪些对象引用
Sqlserver数据库中支持自定义函数,包含表值函数和标量值函数,表值函数一般返回多个数据行即数据集,而标量值函数一般返回一个值,在数据库的存储过程中可调用自定义函数,也可在该自定义函数中调用另一个 ...
- C# 接口《通俗解释》
接口 为什么要用接口?好处在哪里? 如果你的工作是一个修水管的,一天客户找上你让你帮装水管,但是有个要求,就是客户喜欢管子是三角形的. 你立马买了三角形的水管回来,在墙上弄个三角形的口子,客户付了钱, ...
- Linux系统监控命令详解
1. top命令 top命令经常用来监控Linux的系统状况,比如cpu.内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解. 输 ...
- springboot打包不同环境配置与shell脚本部署
本篇和大家分享的是springboot打包并结合shell脚本命令部署,重点在分享一个shell程序启动工具,希望能便利工作: profiles指定不同环境的配置 maven-assembly-plu ...
- C#版 - Leetcode49 - 字母异位词分组 - 题解
C#版 - Leetcode49 - 字母异位词分组 - 题解 Leetcode49.Group Anagrams 在线提交: https://leetcode.com/problems/group- ...
- Bootstrap 前端框架 遇到的问题 解决方案
bootstrap实现导航栏的响应式布局,当在小屏幕.手机屏幕浏览时自动折叠隐藏 直接放代码,更容易理解.下次可以套这个代码 <!DOCTYPE html> <html> &l ...
- XPath和CssSelector定位总结
1. 介绍XPath和CssSelector 2. XPath有哪些方式 2.1 通过XPath语法 2.2 Contains关键字 2.3 Start-With 2.4 Or和And关键字 2.5 ...