debian

Debian下如何实现LNMP自动化部署

小樊
41
2025-04-24 01:19:48
栏目: 智能运维

在Debian系统下实现LNMP(Linux, Nginx, MySQL, PHP)的自动化部署,可以通过编写Shell脚本来完成。以下是一个基本的自动化部署脚本示例,涵盖了安装Nginx、MySQL和PHP的基本步骤。

前提条件

  1. 你已经有一个Debian服务器,并且可以通过SSH访问。
  2. 你有root权限或者可以使用sudo命令。

自动化部署脚本

#!/bin/bash

# 更新系统包列表
sudo apt-get update

# 安装Nginx
sudo apt-get install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx

# 安装MySQL
sudo apt-get install -y mysql-server
sudo mysql_secure_installation <<EOF
y
password
password
y
y
y
EOF
sudo systemctl start mysql
sudo systemctl enable mysql

# 安装PHP及其常用扩展
sudo apt-get install -y php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-pear php-bcmath
sudo systemctl restart php7.4-fpm

# 配置Nginx以支持PHP
sudo sed -i 's/^server_tokens off;/server_tokens prod;/' /etc/nginx/nginx.conf
sudo sed -i 's/^;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php/7.4/fpm/php.ini

# 创建一个简单的PHP测试文件
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

# 重启Nginx以应用配置
sudo systemctl restart nginx

echo "LNMP环境部署完成!"

使用说明

  1. 将上述脚本保存为一个文件,例如deploy_lnmp.sh
  2. 赋予脚本执行权限:
    chmod +x deploy_lnmp.sh
    
  3. 运行脚本:
    sudo ./deploy_lnmp.sh
    

注意事项

  1. MySQL安全配置mysql_secure_installation脚本会引导你设置MySQL的root密码,并进行一些安全配置。请根据实际情况选择合适的选项。
  2. PHP版本:脚本中安装的是PHP 7.4版本。如果你需要其他版本,请修改脚本中的PHP包名和配置文件路径。
  3. Nginx配置:脚本中使用了简单的PHP测试文件来验证PHP是否正常工作。你可以根据需要修改或删除这个测试文件。

通过这种方式,你可以自动化地部署LNMP环境,节省大量手动操作的时间和精力。

0
看了该问题的人还看了