fpm打包工具,fpm打包


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 http://mirrors.aliyun.com/rubygems/ 移除源生的ruby仓库   gem sources --remove http://rubygems.org/ 安装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.推荐打包实际路径,打包软链接时后面一定要有 / ,不加 / 指的是软链接文件,加 / 指目录      

相关内容

    暂无相关文章