文档章节

Ubuntu Server Deploy 已经支持php7

曾建凯
 曾建凯
发布于 2016/02/27 19:10
字数 601
阅读 160
收藏 2

原谅我无耻的打个广告,ubuntu server deploy已加入php7分支,php7的分支已经集成了php扩展的服务器的安装、启用、禁用。

git clone  
git checkout php7
./php.sh install
./php.sh install-ext imagick
./php.sh install-ext redis
./php.sh en redis
./php.sh dis imagick

ubuntu server deploy是一个使用Bash语言开发,专门用于Ubuntu Server的Tengie(Nginx)和PHP环境安装部署使用的项目。已经实测过可用于docker(实际上就是直接获取这个项目的源代码而已)。

master分支是php 5的部署。

php7分支是php 7的部署。

扩展安装目前只在php7分支中支持,未来会移植到主分支上。

因为不同的php扩展,依赖不同的dev库,同时因为目前pecl上面的大多数扩展还不支持php7,需要自己去gihub获得特定的源代码。所以,提供了一个php_ext目录,这目录存放的sh脚本对应的就是不同的扩展所需要预备执行的内容。基于这个脚本,你完全可以去取得不同的源代码来进行编译,比如,好像php-memcached的安装:

#!/usr/bin/env bash
apt-get install libmemcached-dev -y
git clone  
cd php-memcached
git checkout php7 # 取出php7的分支代码
get_source=1      # 声明已经取得了扩展的源代码,无需再去pecl库下载了
config_args="${config_args} --disable-memcached-sasl" # 添加指定其他的configure参数
# 你也可以指定具体的configure的命令config_cmd

除了php.sh以外,主要使用的还有server.sh和tengine.sh

server.sh主要是Ubuntu服务器的各种初始化。tengine.sh则是tengine的部署。

所有的服务、服务器的部署参数,可以通过user目录里面脚本对参数进行重载(我实在不喜欢在命令行的参数上去折腾)。执行server.sh、tengine.sh、php.sh,都会加载整个user目录中的所有脚本。

补充说明一下,Ubuntu服务器的系统服务管理,使用的sysv-rc-conf。

这个项目的设计,是支持多种php版本同时共存的。所以php7分支部分,所有php相关的服务、脚本,都加上了php7的前缀,比如:php7-config,php7ize,php7-pecl等,而php-fpm的进程,也变为php7-fpm。

我自己已经使用这个项目部署超过30台服务的环境了,状态比较稳定和实用了。

详细的介绍可看:

https://git.oschina.net/janpoem/ubuntu-server-deploy

 

© 著作权归作者所有

曾建凯

曾建凯

粉丝 337
博文 66
码字总数 104794
作品 0
广州
技术主管
私信 提问
ElementaryOS 安装LAMP

debug@debug-Macmini:~/Downloads$ sudo apt-get install apache [sudo] debug 的密码: debug@debug-Macmini:~/Downloads$ sudo apt-get install apache2 [sudo] debug 的密码: 正在读取软......

sizeof
2016/12/29
71
0
OneinStack多版本PHP共存

基于《OneinStack》一键PHP/JAVA安装工具中lnmp模式,很多用户希望一个网站运行在php5.4,另一个网站运行在php7,甚至更多版本的php,那么一台服务器上同时支持多个PHP版本应该如何做呢? 1、...

linuxprobe16
2016/11/29
18
0
手把手教你基于WordPress搭建自己的个人博客

一步一步教你基于WordPress搭建自己的个人博客,WordPress作为成熟的CMS框架,美观,方便,插件多,更新频繁,非常适合个人博客与网站的搭建,适合新手,无需太多的代码基础。 原文链接:手把...

flyzy2005
2018/01/29
106
0
Zabbix 3.0 安装

Zabbix 3.0 安装 原文地址http://mp.weixin.qq.com/s?_biz=MzA5NjgwNzM0OQ==&mid=401897477&idx=1&sn=9eda7c22a93b89e30cd1672af19a9c84&scene=23&srcid=02178AIGacHXnK08V8EA6z37#rd 2016-0......

it你好
2016/02/17
0
0
Windows下安装apache+php7+redis扩展

PHP7已经发布了一段时间了,最近闲来无事,就想着安装玩一下 在安装之前我们首先得去下载所需的工具apache+php7 提供两个链接,一个是32位的,一个64位的,请对号入座 32位官方安装包 http:/...

JadeZhu
2016/04/21
682
2

没有更多内容

加载失败,请刷新页面

加载更多

川普给埃尔多安和内堪尼亚胡的信

任性 https://twitter.com/netanyahu/status/1186647558401253377 https://edition.cnn.com/2019/10/16/politics/trump-erdogan-letter/index.htm...

Iridium
21分钟前
10
0
golang-mysql-原生

db.go package mainimport ("database/sql""time"_ "github.com/go-sql-driver/mysql")var (db *sql.DBdsn = "root:123456@tcp(127.0.0.1:3306)/test?charset=u......

李琼涛
49分钟前
5
0
编程作业20191021092341

1编写一个程序,把用分钟表示的时间转换成用小时和分钟表示的时 间。使用#define或const创建一个表示60的符号常量或const变量。通过while 循环让用户重复输入值,直到用户输入小于或等于0的值...

1李嘉焘1
49分钟前
7
0
Netty整合Protobuffer

现在我们都知道,rpc的三要素:IO模型,线程模型,然后就是数据交互模型,即我们说的序列化和反序列化,现在我们来看一下压缩比率最大的二进制序列化方式——Protobuffer,而且该方式是可以跨...

算法之名
55分钟前
18
0
如何用C++实现栈

栈的定义 栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压...

BWH_Steven
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部