0

0

fpm使用打包工具

大家讲道理

大家讲道理

发布时间:2017-07-15 11:42:10

|

3347人浏览过

|

来源于php中文网

原创

  
支持的源类型包
  dir 将目录打包成所需要的类型。可以用于源码编译安装后的软件包
  rpm 对rpm进行转换
  gen 对rubygem包进行转换
  python 将python模块打包成相应的类型
支持的目标类型包
  rpm 转换成rpm包
  deb 转换成deb包
  solaris 转换成solaris包
  puppet 转换成puppet包
 
FPM安装过程
 
安装ruby支持模块
  yum install ruby rubygems ruby-devel -y
添加阿里云的rubygems仓库,国外的源比较慢
  gem sources -a
移除源生的ruby仓库
  gem sources --remove
安装fpm
  gem install fpm -v 1.4.0
 
错误:
ERROR:  Error installing fpm:
        json requires Ruby version >= 1.9.3.
 
类似这种错误,很多网友推荐升级ruby,我也尝试过,表示坑很多,并不推荐
实际上并不是fpm或者ruby的问题,而是因为系统内json默认版本过高,导致ruby 1.8.7无法支持,需要降低json版本
  gem install json -v 1.8.3
安装完json后再安装fpm即可
另外,centos7.x中默认ruby版本就高,没有此问题
 
fpm命令
 
常用参数:
  -s 指定source类型,如dir
  -t 制定目标类型,如rpm
  -n 指定包名字
  -v 指定包的版本号
  -C 指定打包的相对路径
  -d 指定依赖于哪些包
  -f 第二次打包时目录下如果有同名包,覆盖
  -p 输出安装包的目录,不指定则为当前目录
  --post-install 软件包安装完成之后所要执行的脚本 同::--after-install
  --pre-install 软件包安装完成之前缩要执行的脚本 同: --before-install
  --post-uninstall 软件包卸载完成之后所要执行的脚本 同::--after-remove
  --pre-uninstall 软件包卸载完成之前缩要执行的脚本 同: --before-remove
fpm命令其实是对rpmbuild命令进行封装,其实低层还是rpmbuild命令,因此系统必须要有rpmbuild命令。
如果fpm命令无法运行,可以检查rpm-build是否安装 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安装后要执行的脚本,如创建用户、创建软链接
 
注意事项:
  1.打包路径,推荐使用绝对路径
  2.推荐打包实际路径,打包软链接时后面一定要有 / ,不加 / 指的是软链接文件,加 / 指目录
 
 

相关专题

更多
C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

8

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

29

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

13

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

42

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

6

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

9

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

5

2026.01.15

php图片上传教程汇总
php图片上传教程汇总

本专题整合了php图片上传相关教程,阅读专题下面的文章了解更多详细教程。

2

2026.01.15

phpstorm相关教程大全
phpstorm相关教程大全

本专题整合了phpstorm相关教程汇总,阅读专题下面的文章了解更多详细内容。

4

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
React 教程
React 教程

共58课时 | 3.7万人学习

Pandas 教程
Pandas 教程

共15课时 | 0.9万人学习

ASP 教程
ASP 教程

共34课时 | 3.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号