阿里云一键部署LNMP(Linux+Nginx+MySQL+PHP)栈

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: LNMP代表Linux+Nginx+MySQL+PHP网站服务器架构。通过ROS资源编排可以阿里云上一键部署LNMP栈。

LNMP代表Linux+Nginx+MySQL+PHP网站服务器架构。本文主要目的是为大家提供一种非常简单的方法,在阿里云上部署LNMP栈。
通过<阿里云ROS资源编排服务>,将VPC、NAT Gateway、ECS创建,LNMP栈部署过程自动化,使大家能够非常方便地部署一个LNMP栈。

急速部署LNMP栈

一键部署LNMP栈>>
screenshot
screenshot

注意:

ROS模板安装LNMP栈

安装LNMP:关闭防火墙,关闭SELinux,安装nginx,MySQL和PHP。UserData如下:

    "systemctl stop firewalld.service \n",
    "systemctl disable firewalld.service \n",
    "sed -i 's/^SELINUX=/# SELINUX=/' /etc/selinux/config \n",
    "sed -i '/# SELINUX=/a SELINUX=disabled' /etc/selinux/config \n",
    "setenforce 0 \n",
    "yum install yum-priorities -y \n",
    "yum -y install aria2 \n",
    "aria2c $NginxUrl \n",
    "rpm -ivh nginx-*.rpm \n",
    "yum -y install nginx \n",
    "systemctl start nginx.service \n",
    "systemctl enable nginx.service \n",
    "yum -y install php-fpm \n",
    "systemctl start php-fpm.service \n",
    "systemctl enable php-fpm.service \n",
    "sed -i '/FastCGI/,/htaccess/s/    #/    /' /etc/nginx/conf.d/default.conf \n",
    "sed -i '/FastCGI/s/^    /    #/' /etc/nginx/conf.d/default.conf \n",
    "sed -i '/htaccess/s/^    /    #/' /etc/nginx/conf.d/default.conf \n",
    "sed -i '/SCRIPT_FILENAME/s/\\/scripts/\\/usr\\/share\\/nginx\\/html\\//' /etc/nginx/conf.d/default.conf \n",
    "yum -y install mariadb mariadb-server \n",
    "systemctl start mariadb.service \n",
    "systemctl enable mariadb.service \n",
    "yum -y install php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash \n",
    "MDSRING=`find / -name mbstring.so` \n",
    "echo extension=$MDSRING >> /etc/php.ini \n",
    "systemctl restart mariadb.service \n",
    "mysqladmin -u root password \"$dbrootpassword\" \n",
    "$(mysql $dbname -u root --password=\"$dbrootpassword\" >/dev/null 2>&1 </dev/null); (( $? != 0 )) \n",
    "echo CREATE DATABASE $dbname \\; > /tmp/setup.mysql \n",
    "echo GRANT ALL ON $dbname.* TO \"$dbuser\"@\"localhost\" IDENTIFIED BY \"'$dbpassword'\" \\; >> /tmp/setup.mysql \n",
    "mysql -u root --password=\"$dbrootpassword\" < /tmp/setup.mysql \n",
    "$(mysql $dbname -u root --password=\"$dbrootpassword\" >/dev/null 2>&1 </dev/null); (( $? != 0 )) \n",
    "cd /root \n",
    "systemctl restart php-fpm.service \n",
    "systemctl restart nginx.service \n",
    "echo \\<?php >  /usr/share/nginx/html/test.php \n",
    "echo \\$conn=mysql_connect\\(\"'127.0.0.1'\", \"'$dbuser'\", \"'$dbpassword'\"\\)\\; >>  /usr/share/nginx/html/test.php \n",
    "echo if \\(\\$conn\\){ >>  /usr/share/nginx/html/test.php \n",
    "echo   echo \\\"LNMP platform connect to mysql is successful\\!\\\"\\; >>  /usr/share/nginx/html/test.php \n",
    "echo   }else{  >>  /usr/share/nginx/html/test.php \n",
    "echo echo \\\"LNMP platform connect to mysql is failed\\!\\\"\\;  >>  /usr/share/nginx/html/test.php \n",
    "echo }  >>  /usr/share/nginx/html/test.php \n",
    "echo  phpinfo\\(\\)\\;  >>  /usr/share/nginx/html/test.php \n",
    "echo \\?\\>  >>  /usr/share/nginx/html/test.php \n",

测试部署结果

创建完成后,查看资源栈概况:


screenshot


浏览器中输入图中的的NginxWebsiteURL,得到如下结果,则部署成功:
screenshot

ROS示例模板

LNMP_basic.json
screenshot

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
8天前
|
数据库
基于PHP+MYSQL开发制作的趣味测试网站源码
基于PHP+MYSQL开发制作的趣味测试网站源码。可在后台提前设置好缘分, 自己手动在数据库里修改数据,数据库里有就会优先查询数据库的信息, 没设置的话第一次查询缘分都是非常好的 95-99,第二次查就比较差 , 所以如果要你女朋友查询你的名字觉得很好 那就得是她第一反应是查和你的缘分, 如果查的是别人,那不好意思,第二个可能是你。
25 3
|
11天前
|
SQL Oracle 关系型数据库
MySQL、SQL Server和Oracle数据库安装部署教程
数据库的安装部署教程因不同的数据库管理系统(DBMS)而异,以下将以MySQL、SQL Server和Oracle为例,分别概述其安装部署的基本步骤。请注意,由于软件版本和操作系统的不同,具体步骤可能会有所变化。
45 3
|
1月前
|
NoSQL 关系型数据库 MySQL
linux服务器重启php,nginx,redis,mysql命令
linux服务器重启php,nginx,redis,mysql命令
34 1
|
14天前
|
Oracle 关系型数据库 MySQL
【实操记录】MySQL二进制安装包部署
本文详细描述了采用二进制安装的各个步骤,具有较强的参考意义,基本可作为标准步骤实施
23 0
|
21天前
|
关系型数据库 MySQL Linux
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
|
29天前
|
关系型数据库 MySQL Nacos
使用 Docker 部署 Nacos 并配置 MySQL 数据源
使用 Docker 部署 Nacos 并配置 MySQL 数据源
281 0
|
5天前
|
弹性计算 应用服务中间件 Linux
阿里云服务器开放端口完整图文教程
笔者近期开发完成的服务端程序部署在阿里云的ECS云服务器上面,一些应用程序配置文件需要设置监听的端口(如Tomcat的8080、443端口等),虽然通过CentOs 7系统的的「防火墙」开放了对应的端口号,任然无法访问端口号对应的应用程序,后面了解到原来还需要设置云服务器的「安全组规则」,开放相应的端口权限,服务端的接口才能真正开放。
80 1
阿里云服务器开放端口完整图文教程
|
9天前
|
存储 弹性计算 大数据
阿里云服务器怎么样?云服务器ECS功能、租用费用全解析
阿里云ECS是弹性计算服务,提供安全可靠的云服务器,包括多种实例规格如经济型、通用型、计算型等,适合不同场景。ECS支持VPC专有网络、快照与镜像、多种付费模式。用户可按需选择计算架构、存储类型,享受灵活的网络控制、自动化数据备份和低成本计算资源。适用于Web应用、在线游戏、大数据分析和深度学习等场景。阿里云提供免费试用和优惠价格,服务众多知名企业,如新浪微博。
|
1天前
|
存储 域名解析 运维
阿里云轻量应用服务器82元与298元年解析与选择参考
目前,阿里云推出的两款特惠轻量应用服务器——82元1年的2核2G3M套餐和298元1年的2核4G4M套餐,吸引了众多用户的关注。本文将深入解析这两款套餐的具体配置、优势、应用场景及选购建议,以供参考。
阿里云轻量应用服务器82元与298元年解析与选择参考
|
2天前
|
存储 固态存储 大数据
阿里云服务器实例、块存储、带宽收费标准与云服务器最新活动价格参考
阿里云服务器价格通常包括云服务器实例价格、块存储价格和带宽价格组成,云服务器不同实例规格收费标准不一样,选择不同类型的块存储收费标准也不一样,选择不同的带宽收费标准也不一样。现在阿里云轻量应用服务器2核4G4M峰值带宽298元1年,云服务器2核4G5M固定带宽199元1年、2核8G1M固定带宽652.32元1年、4核8G1M固定带宽955.58元1年、4核16G10M带宽100G ESSD Entry云盘70元1个月。本文为大家整理了目前阿里云服务器实例、块存储、带宽收费标准与云服务器最新的活动价格情况,以供参考。
阿里云服务器实例、块存储、带宽收费标准与云服务器最新活动价格参考