文档章节

CentOS 7 + nginx-1.12 + php-7.2 + MySQL-5.7

netkiller-
 netkiller-
发布于 01/12 19:57
字数 1078
阅读 49
收藏 0
点赞 0
评论 0

CentOS 7 + nginx-1.12 + php-7.2 + MySQL-5.7

使用 Netkiller OSCM 一键安装PHP环境

Mr. Neo Chen (陈景峯), netkiller, BG7NYT


中国广东省深圳市龙华新区民治街道溪山美地
518131
+86 13113668890

<netkiller@msn.com>

$Id: setup.xml 608 2013-05-31 11:25:25Z netkiller

版权声明

转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。

文档出处:
http://netkiller.github.io
http://netkiller.sourceforge.net

微信扫描二维码进入 Netkiller 微信订阅号

QQ群:128659835 请注明“读者”

 

2018-01-12: 2013-05-31 19:25:25 +0800 (Fri, 31 May 2013)

摘要

在工作中,需要经常为新系统安装软件,重复而简单,但又不得不作,我将过去几年中工作中临时写的脚本这里了一下,能够实现半自动化安装标本,只需要Ctrl+C, Ctrl+V 快速粘贴复制,即可快速完成安装

目录

1. CentOS 7 64bit (Minimal ISO) 安装后 新机初始化常用软件包安装

Minimal ISO

初始化操作系统

curl -s https://raw.githubusercontent.com/oscm/shell/master/os/personalise.sh | bash

2. MySQL-5.7

卸载旧的包,以免出现冲突

rpm -e --nodeps mysql-libs
yum localinstall MySQL-*

安装 MySQL

curl -s https://raw.githubusercontent.com/oscm/shell/master/database/mysql/5.7/mysql57-community-release-el7-11.sh | bash
curl -s https://raw.githubusercontent.com/oscm/shell/master/database/mysql/5.7/mysql.server.sh | bash

安装完成后会提示临时密码

2018-01-08T00:39:52.431840Z 1 [Note] A temporary password is generated for root@localhost: 6)?#raQPKf3s		

[root@localhost my.cnf.d]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.20

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

使用这个密码登陆,然后修改密码

ALTER USER root@localhost identified by 'MQiEge1ikst7S_6tlXzBOmt_4b';
ALTER USER root@localhost PASSWORD EXPIRE NEVER;

 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'chen' WITH GRANT OPTION;
FLUSH PRIVILEGES;

3. php-7.2

 

安装编译器和一些依赖的devel包。

curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/gcc/gcc.sh | bash
curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/7.1/devel.sh | bash

安装 PHP 7.2

curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/7.2/php-7.2.1.sh | bash
curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/php-profile.sh | bash

安装 PHP 扩展

curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/pecl/amqp.sh | bash
curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/pecl/mongodb.sh | bash
curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/pecl/pthreads.sh | bash
curl -s https://raw.githubusercontent.com/oscm/shell/master/lang/php/pecl/phalcon.sh | bash

Redis 暂不支持 7.2,至少现在没有稳定版本,我们只能使用最新的Release版本。

https://raw.githubusercontent.com/oscm/shell/master/lang/php/7.2/extension/redis.sh

4. nginx-1.12

为web服务器创建一个用户,我喜欢使用www,id为80更容易记,同时将一个单独分区挂在/www上用户存放web应用程序。

curl -s https://raw.githubusercontent.com/oscm/shell/master/os/user/www.sh | bash

安装 nginx

curl -s https://raw.githubusercontent.com/oscm/shell/master/web/nginx/stable/nginx.sh | bash

如果你不懂编译器优化,建议你使用yum方案。在不优化的情况下编译出来程序很臃肿。

[root@localhost src]# rpm -qa | grep nginx
nginx-release-centos-7-0.el7.ngx.noarch
nginx-1.12.2-1.el7_4.ngx.x86_64

配置虚拟主机

4.1. host 配置

mkdir -p /www/www.mydomain.com/htdocs

cd /etc/nginx/conf.d
cp
default.conf www.mydomain.com.conf
vim www.mydomain.com.conf
server {
	listen 80;
	server_name www.mydomain.com;
	
	charset utf-8;
	access_log /var/log/nginx/www.mydomain.com.access.log main;
	
	location / {
		root /www/www.mydomain.com/htdocs;
		index index.html index.php;
	}
	
	#error_page 404 /404.html;
	
	# redirect server error pages to the
	static page /50x.html
	#
	error_page 500 502 503 504 /50x.html;
	location = /50x.html {
		root /usr/share/nginx/html;
	}
	
	# proxy the PHP scripts to
	Apache listening on 127.0.0.1:80
	#
	#location ~ \.php$ {
	# proxy_pass http://127.0.0.1;
	#}
	
	# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
	#
	location ~ \.php$ {
		root html;
		fastcgi_pass 127.0.0.1:9000;
		fastcgi_index index.php;
		fastcgi_param
		SCRIPT_FILENAME /www/www.mydomain.com/htdocs$fastcgi_script_name;
		include fastcgi_params;
	}
	
	# deny access to .htaccess files, if
	Apache's document root
	# concurs with nginx's one
	#
	location ~ /\.ht {
		deny all;
	}
}

创建测试页面

cat >> /www/www.mydomain.com/htdocs/index.php <<PHP
<?php
phpinfo();
PHP

启动服务器

service php-fpm start
				service nginx start

检查index.php输出

# curl -H HOST:www.mydomain.com http://127.0.0.1/index.php

5. redis-4.0.6

安装 Redis 因为YUM安装的Redis版本比较低,所以我们选择了源码安装

curl -s https://raw.githubusercontent.com/oscm/shell/master/database/redis/source/redis-4.0.6.sh | bash

安装redis

[root@localhost redis-4.0.6]# redis-cli 
127.0.0.1:6379> set nickname netkiller 10
(error) ERR syntax error
127.0.0.1:6379> get nickname
(nil)
127.0.0.1:6379> set nickname netkiller 
OK
127.0.0.1:6379> get nickname
"netkiller"
127.0.0.1:6379> expire nickname 5
(integer) 1
127.0.0.1:6379> get nickname
(nil)
127.0.0.1:6379>

6. MongoDB

curl -s https://raw.githubusercontent.com/oscm/shell/master/database/mongodb/mongodb.org/mongodb-3.6.sh | bash

© 著作权归作者所有

共有 人打赏支持
netkiller-

netkiller-

粉丝 672
博文 241
码字总数 323941
作品 10
深圳
部门经理
lj2007331/oneinstack

This script is written using the shell, in order to quickly deploy ////(Linux, Nginx/Tengine/OpenResty, MySQL in a production environment/MariaDB/Percona, PHP, JAVA), applicable......

lj2007331
2015/08/04
0
0
OneinStack 1.7 发布,一键 PHP/JAVA 安装工具

OneinStack 1.7 发布了,这个脚本是使用 shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine/OpenResty、 MySQL/MariaDB/Percona/MongoDB/PostgreSQL、PHP、A...

lj2007331
04/25
0
0
OneinStack 1.2 发布,一键 PHP/JAVA 安装工具

这个脚本是使用 shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine、 MySQL/MariaDB/Percona、PHP、Apache、Tomcat),适用于CentOS 5~7(包括redhat)、Deb...

lj2007331
2016/03/03
2.6K
8
OneinStack 1.4 发布,一键 PHP/JAVA 安装工具

OneinStack 1.4 发布了,这个脚本是使用shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine/OpenResty、MySQL/MariaDB/Percona、PHP、Apache、Tomcat),适用于...

lj2007331
2016/07/12
3.2K
21
OneinStack 1.3 发布,一键 PHP/JAVA 安装工具

OneinStack 1.3 发布了,这个脚本是使用 shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine/OpenResty、 MySQL/MariaDB/Percona、PHP、Apache、Tomcat),适用...

lj2007331
2016/04/29
1K
11
弄了个阿里云ECS,用的centos系统

写了半年前后端的代码,现在终于弄了个服务器耍耍了。 学生价最低配ECS,用的是centos 7.2,虽然是最低配,但是还是够我玩了吧。 购买过程就不描述了,大概就是验证下学生身份后直接扫一扫付...

赫鲁晓夫的玉米棒子
07/12
0
0
OneinStack 1.1 发布,一键 PHP/JAVA 安装工具

这个脚本是使用shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine、 MySQL/MariaDB/Percona、PHP、Apache、Tomcat),适用于CentOS 5~7(包括redhat)、Debia...

lj2007331
2015/12/02
4.2K
26
CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境

什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/Perl/Python组合成的动态Web应用程序和服务器,它是一组Web应用程序的基础软件包,在这个基础环境上我们可以搭建任何使...

HMLinux
2017/06/05
0
0
Shell 一键安装 LNMPT

前言 为了更加快速的节约时间,我选择用shell脚本一键执行! 这个脚本是使用shell编写,为了快速在生产环境上部署lnmp / lamp /lnmpa 。 (Linux、Nginx/Tengine MySQL /MariaDB /Percona、P...

我不是九爷
2017/11/21
0
0
体验一键php/java环境安装工具oneinstack

概述 这个东西其实我很早之前就听说了,但是一直没有去尝试使用,我一直使用的是lnmp一键安装包,但是lnmp一键安装包是安装java环境的,oneinstack更强大一点 官网 环境准备 首先使用vagrant...

bboysoulcn
04/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringBoot | 第十章:Swagger2的集成和使用

前言 前一章节介绍了mybatisPlus的集成和简单使用,本章节开始接着上一章节的用户表,进行Swagger2的集成。现在都奉行前后端分离开发和微服务大行其道,分微服务及前后端分离后,前后端开发的...

oKong
今天
2
0
Python 最小二乘法 拟合 二次曲线

Python 二次拟合 随机生成数据,并且加上噪声干扰 构造需要拟合的函数形式,使用最小二乘法进行拟合 输出拟合后的参数 将拟合后的函数与原始数据绘图后进行对比 import numpy as npimport...

阿豪boy
今天
1
0
云拿 无人便利店

附近(上海市-航南路)开了家无人便利店.特意进去体验了一下.下面把自己看到的跟大家分享下. 经得现场工作人员同意后拍了几张照片.从外面看是这样.店门口的指导里强调:不要一次扫码多个人进入....

周翔
昨天
1
0
Java设计模式学习之工厂模式

在Java(或者叫做面向对象语言)的世界中,工厂模式被广泛应用于项目中,也许你并没有听说过,不过也许你已经在使用了。 简单来说,工厂模式的出现源于增加程序序的可扩展性,降低耦合度。之...

路小磊
昨天
161
1
npm profile 新功能介绍

转载地址 npm profile 新功能介绍 npm新版本新推来一个功能,npm profile,这个可以更改自己简介信息的命令,以后可以不用去登录网站来修改自己的简介了 具体的这个功能的支持大概是在6这个版...

durban
昨天
1
0
Serial2Ethernet Bi-redirection

Serial Tool Serial Tool is a utility for developing serial communications, custom protocols or device testing. You can set up bytes to send accordingly to your protocol and save......

zungyiu
昨天
1
0
python里求解物理学上的双弹簧质能系统

物理的模型如下: 在这个系统里有两个物体,它们的质量分别是m1和m2,被两个弹簧连接在一起,伸缩系统为k1和k2,左端固定。假定没有外力时,两个弹簧的长度为L1和L2。 由于两物体有重力,那么...

wangxuwei
昨天
0
0
apolloxlua 介绍

##项目介绍 apolloxlua 目前支持javascript到lua的翻译。可以在openresty和luajit里使用。这个工具分为两种模式, 一种是web模式,可以通过网页使用。另外一种是tool模式, 通常作为大规模翻...

钟元OSS
昨天
2
0
Mybatis入门

简介: 定义:Mybatis是一个支持普通SQL查询、存储过程和高级映射的持久层框架。 途径:MyBatis通过XML文件或者注解的形式配置映射,实现数据库查询。 特性:动态SQL语句。 文件结构:Mybat...

霍淇滨
昨天
2
0
开发技术瓶颈期,如何突破

前言 读书、学习的那些事情,以前我也陆续叨叨了不少,但总觉得 “学习方法” 就是一个永远在路上的话题。个人的能力、经验积累与习惯方法不尽相同,而且一篇文章甚至一本书都很难将学习方法...

_小迷糊
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部