fpm使用打包工具

大家讲道理
Lepaskan: 2017-07-15 11:42:10
asal
3084 orang telah melayarinya
FPM工具
  
支持的源类型包
  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安装后要执行的脚本,如创建用户、创建软链接
Salin selepas log masuk
 
注意事项:
  1.打包路径,推荐使用绝对路径
  2.推荐打包实际路径,打包软链接时后面一定要有 / ,不加 / 指的是软链接文件,加 / 指目录
 
 

Atas ialah kandungan terperinci fpm使用打包工具. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan