zoukankan      html  css  js  c++  java
  • FPM打包工具

    一. FPM简介

      FPM的作者是Jordansissel

      FPM的GITHUB:https://github.com/jordansissel/fpm

      官网:http://fpm.readthedocs.io/en/latest/

      FPM功能简单的说就是将一种类型的包转换成另外一种类型

    2. 支持的源类型包

    dir        将目录打包成所需要的类型,可以用于源码编译安装的软件包
    rpm 对rpm进行转换  
    gem 对rubygem包进行转换
    python 将python模块打包成相应的类型

    3.支持的目标类型包

    rpm 转换为rpm包  
    deb 转换为deb包
    solaris 转换为solaris包
    puppet 转换为solaris包

    二. 安装

    1 yum install centos-release-scl-rh 
    2 yum -y install ruby rubygems ruby-devel
    3 gem sources -a http://mirrors.aliyun.com/rubygems/
    4 gem sources --remove http://rubygems.org/
    5 gem install fpm

    三. RPM参数

        详细使用:fpm --help

        常见参数

    -s 指定源类型
    -t 指定目标类型,即想要制作什么包
    -n 指定包名字
    -V 指定包版本号
    -C 指定打包的相对路径
    -d 指定以来与那些包
    -f 第二次打包时目录下如果有同名安装包存在则覆盖
    -p 输出的安装包的目录,不想放在当前下就需要指定
    --post-install 软件包安装完成之后要运行的脚本
    --pre-install 软件包安装完成之前所要运行的脚本
    --post-uninstall 软件包卸载完成之后所要运行的脚本
    --pre-uninstall 软件包卸载完成之前所要运行的脚本

    四. 实验

    1.1 编译安装nginx

    #开启yum缓存
    sed -i 's/keepcache=0/keepcache=1/g' /etc/yum.conf
    #检查本地缓存rpm包 有则删除
    find /var/cache/yum/ -name "*rpm"
    #安装依赖工具
    yum -y install pcre-devel openssl-devel
    #打包依赖工具
    find /var/cache/yum/ -name "*rpm" | xargs cp -t /tmp/
    #安装nginx
    useradd nginx -M -s /sbin/nologin
    mkdir /application/tools -p
    wget http://nginx.org/download/nginx-1.15.2.tar.gz
    tar xf nginx-1.15.2.tar.gz
    cd nginx-1.15.2/
    ./configure --prefix=/application/nginx-1.6.3 --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
    make && maek install

    1.2打包nginx

    #编写脚本
    [root@OS-A1 application]# cat /server/scripts/nginx_rpm.sh 
    #!/bin/bash
    useradd nginx -M -s /sbin/nologin
    ln -s /application/nginx-1.6.3/ /application/nginx
    #打包
    fpm -s dir -t rpm -n nginx -d 'pcre-devel,openssl-devel' --post-install /server/scripts/nginx_rpm.sh -f /application/nginx-1.6.3/

    五. 安装rpm包

    #yum安装 从网络安装依赖
    yum localinstall nginx-1.0-1.x86_64.rpm 
    #rpm安装可能报错依赖关系需要手动安装依赖
    rpm -ivh nginx-1.0-1.x86_64.rpm 

    作者:闫世成

    出处:http://cnblogs.com/yanshicheng

    联系:yans121@sina.com

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题或建议,请多多赐教,非常感谢。
  • 相关阅读:
    leetcode 673. 最长递增子序列的个数 java
    leetcode 148. 排序链表 java
    leetcode 98. 验证二叉搜索树 java
    leetcode 29. 两数相除 java
    leetcode 234. 回文链表 java
    Valid Palindrome LeetCode Java
    Single Number II LeetCode Java
    Single Number LeetCode java
    Search in Rotated Sorted Array II LeetCode Java
    Search in Rotated Sorted Array leetcode java
  • 原文地址:https://www.cnblogs.com/yanshicheng/p/9382120.html
Copyright © 2011-2022 走看看