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

2018-01-13 11:09:51来源:oschina作者:neo-chen人点击

分享
CentOS 7 + nginx-1.12 + php-7.2 + MySQL-5.7
使用 Netkiller OSCM 一键安装PHP环境
Mr.Neo Chen(陈景峯),netkiller, BG7NYT

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


$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) 安装后 新机初始化常用软件包安装
2. MySQL-5.7
3. php-7.2
4. nginx-1.12

4.1. host 配置5. redis-4.0.6
6. MongoDB 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 [email protected]: 6)?#raQPKf3s
[[email protected] 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 [email protected] identified by 'MQiEge1ikst7S_6tlXzBOmt_4b';
ALTER USER [email protected] 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方案。在不优化的情况下编译出来程序很臃肿。


[[email protected] 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
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


[[email protected] 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

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台