构建自动化运维之基础设施—定制php for fpm 的rpm包

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

 php定制rpm包支持fpm---spec的书写

安装epel源

 
  1. yum install libmcrypt-devel mhash-devel mcrypt gettext glibc-common gd-devel \
  2. pcre-devel openldap-devel t1lib-devel icu libicu-devel libtidy-devel 
 
  1. Name:           php 
  2. Version:        5.3.21 
  3. Release:        1%{?dist} 
  4. Summary:        PHP is a widely-used general-purpose scripting  
  5. Vendor:         itnihao@qq.com 
  6. language. 
  7.  
  8. Group:          Development/Languages 
  9. License:        PHP License v3.01 
  10. URL:            http://www.php.net 
  11. Source0:        http://www.php.net/distributions/php-%{version}.tar.bz2 
  12. #Source1:        %{name}.conf 
  13. #Source2:        %{name}.ini 
  14. #Source3:        %{name}-fpm.conf 
  15. BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-buildroot 
  16.  
  17. Obsoletes:      php 
  18.  
  19. BuildRequires: make 
  20. BuildRequires: bzip2 >= 1.0.2-4 
  21. BuildRequires: curl-devel >= 7.19.7 
  22. BuildRequires: gd-devel >= 2.0.35 
  23. BuildRequires: libmcrypt-devel >= 2.5.8-2 
  24. BuildRequires: glibc-common >= 2.12 
  25. BuildRequires: mhash-devel >= 0.9 
  26. BuildRequires: mcrypt >= 2.6 
  27. BuildRequires: libtool-ltdl-devel >= 1.5.26-1 
  28. BuildRequires: libxml2-devel >= 2.6.32-2 
  29. BuildRequires: openldap-devel >= 2.4.23 
  30. BuildRequires: openssl-devel >= 0.9.8 
  31. BuildRequires: pcre-devel >= 7.8-2 
  32. BuildRequires: t1lib-devel >= 5.1.2-1 
  33. BuildRequires: zlib-devel >= 1.2.3-3 
  34.  
  35. %description 
  36. PHP is a widely-used general-purpose scripting language that is especially 
  37. suited for Web development and can be embedded into HTML. 
  38.  
  39. %prep 
  40. %setup -q -n %{name}-%{version} 
  41. %build 
  42. EXTENSION_DIR=%{_libdir}/php/modules; export EXTENSION_DIR 
  43. %configure  --with-layout=GNU --with-libdir=lib64 --enable-fpm --with-gd --enable-intl --enable-bcmath --enable-mbstring --enable-pcntl --enable-json --enable-soap  --enable-sockets --enable-sqlite-utf8 --enable-zip --with-zlib --with-bz2 --with-curl --with-jpeg-dir --with-freetype-dir --with-png-dir --with-iconv --with-xpm-dir --with-zlib-dir --with-gettext --with-pcre-regex --with-mcrypt --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --with-pdo-mysql=mysqlnd --with-pdo-sqlite --with-tidy=/usr --with-pear=%{_datadir}/php/pear --with-icu-dir=/usr --disable-debug 
  44.  
  45. make %{?_smp_mflags} 
  46.  
  47. %install 
  48. [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf %{buildroot} 
  49. mkdir -p %{buildroot}%{_initrddir} 
  50. install -Dp -m0755 sapi/fpm/init.d.php-fpm.in %{buildroot}%{_initrddir}/php-fpm 
  51. %{__make} install INSTALL_ROOT="%{buildroot}" 
  52.  
  53. %clean 
  54. [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf %{buildroot} 
  55.  
  56. %post 
  57. /sbin/chkconfig --add php-fpm 
  58. /sbin/chkconfig --level 2345 php-fpm on 
  59.  
  60. %preun 
  61. if [ "$1" = 0 ] ; then 
  62.     /sbin/service php-fpm stop > /dev/null 2>&1 
  63.     /sbin/chkconfig --del php-fpm 
  64. fi 
  65. exit 0 
  66.  
  67. %postun 
  68. if [ "$1" -ge 1 ]; then 
  69.     /sbin/service php-fpm condrestart > /dev/null 2>&1 
  70. fi 
  71. exit 0 
  72.  
  73. %files 
  74. %defattr(-,root,root,-) 
  75. %{_bindir}/* 
  76. %{_sbindir}/* 
  77. %{_includedir}/* 
  78. %{_libdir}/* 
  79. %{_mandir}/man1/php* 
  80. %{_sysconfdir}/* 
  81. %{_datadir}/* 
  82. %{_initrddir}/* 
  83. %exclude /.channels 
  84. %exclude /.depdb 
  85. %exclude /.depdblock 
  86. %exclude /.filemap 
  87. %exclude /.lock 
  88.  
  89.  
  90. %changelog 
  91. * Fri Jan 25 2013 Itnihao build   - 5.3.21-1 <itnihao@qq.com> 
  92.  
  93. * Wed Dec 21 2011 Mike Willbanks  - 5.3.8-1 
  94. - Updated to 5.3.8 
  95. * Tue Feb 23 2011 Mike Willbanks  - 5.3.5-1 
  96. - Initial Package 

本文转自it你好 51CTO博客,原文链接:http://blog.51cto.com/itnihao/1127500,如需转载请自行联系原作者

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
24天前
|
存储 大数据 数据处理
PHP 与大数据:构建高效数据处理系统
传统的数据处理系统往往难以应对大规模数据的处理需求,而PHP作为一种常用的服务器端脚本语言,在数据处理方面也有其独特的优势。本文将探讨如何利用PHP构建高效的大数据处理系统,结合实际案例分析其应用场景及优势所在。
15 2
|
9天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
11天前
|
人工智能 运维 监控
构建高效自动化运维体系的实践与思考
【4月更文挑战第14天】在数字化转型的浪潮中,自动化运维作为提升系统稳定性和效率的关键手段,受到了企业的广泛关注。本文将深入探讨如何构建一个高效的自动化运维体系,涵盖从基础设施的搭建到流程的优化等多个方面。通过分析当前自动化运维的挑战及解决方案,文章旨在为读者提供一套实用的策略框架,帮助企业实现运维工作的高效化、标准化和智能化。
|
14天前
|
机器学习/深度学习 存储 运维
构建高效自动化运维体系的五大策略
【4月更文挑战第10天】在数字化转型的浪潮中,企业IT基础设施的复杂性与日俱增,传统的手动运维模式已难以满足快速响应和高效率的需求。本文将探讨构建一个高效自动化运维体系的五大策略,包括监控与告警的智能化、配置管理自动化、故障自愈能力的提升、日志管理的优化以及持续集成和部署(CI/CD)的实践。这些策略将帮助企业减轻运维负担,提高系统稳定性和业务敏捷性。
|
16天前
|
运维 监控 Kubernetes
构建高效自动化运维体系的实践与思考
【4月更文挑战第8天】在数字化时代,IT基础设施的复杂性日益增加,传统的手工运维模式已经难以满足快速响应和高效率的需求。本文将探讨如何通过自动化工具和策略构建一个高效的自动化运维体系,旨在提高系统的稳定性、减少人为错误以及优化资源分配。文章首先分析了自动化运维的必要性,接着介绍了实现自动化的关键技术和工具,并通过案例分析展示自动化运维体系的实际效果。最后,对自动化运维的未来发展趋势进行了展望。
|
16天前
|
存储 运维 监控
构建高效自动化运维体系的关键步骤
【4月更文挑战第8天】 在快速发展的IT环境中,自动化已成为提升运维效率和可靠性的核心驱动力。本文将详细探讨构建一个高效自动化运维体系的必经之路,从基础设施的自动化部署到监控、故障响应与修复,再到持续的性能优化。通过分析具体的技术实现和最佳实践案例,揭示如何利用现代技术栈打造能够支撑复杂服务架构的自动化运维平台。
|
19天前
|
存储 运维 监控
构建高效自动化运维体系的五大关键策略
【4月更文挑战第6天】 在信息技术迅猛发展的今天,自动化已经成为了运维领域的核心竞争力。本文将探讨构建高效自动化运维体系的五大关键策略,包括基础设施即代码(IaC)的应用、持续集成与持续部署(CI/CD)的实践、监控与告警系统的优化、配置管理的重要性以及灾难恢复计划的自动化。通过分析每个策略的核心要素和实施步骤,旨在为读者提供一套全面的自动化运维解决方案,以提升系统的稳定性、效率和可扩展性。
17 1
|
23天前
|
存储 人工智能 运维
构建高效自动化运维体系的五大支柱
【4月更文挑战第2天】在数字化转型的浪潮中,企业IT基础设施的管理与维护日益复杂。传统的手动运维方式已无法满足快速迭代和高稳定性的需求,因此,构建一个高效的自动化运维体系成为提升IT效率的关键。本文将探讨构建自动化运维体系的五大支柱:标准化、自动化工具的选择与应用、监控与报警、日志管理以及持续集成与持续部署(CI/CD),并分析每个支柱的核心要素及其在整体运维体系中的作用。通过实践案例和最佳实践的分享,为读者提供构建和维护自动化运维体系的具体策略和方法。
|
26天前
|
运维 Kubernetes 持续交付
构建高效自动化运维体系:基于Docker和Kubernetes的最佳实践
在现代云计算环境中,自动化运维成为保障系统稳定性与提升效率的关键。本文深入探讨了如何利用Docker容器化技术和Kubernetes容器编排工具构建一个高效、可靠的自动化运维体系。文中不仅介绍了相关的技术原理,还结合具体案例分析了实施过程中的常见问题及解决方案,为读者提供了一套行之有效的最佳实践指南。
|
27天前
|
运维 Kubernetes 监控
构建高效稳定的容器化运维环境
在现代IT基础设施中,容器技术以其轻量级、快速部署和易于管理的特性成为企业数字化转型的重要支撑。本文将深入探讨如何构建一个高效且稳定的容器化运维环境,涵盖从容器选择、集群管理到持续集成与持续部署(CI/CD)的最佳实践。文章旨在为运维工程师提供一套系统的解决方案,以应对日益复杂的业务需求和技术挑战。

热门文章

最新文章