部署单片LAMP应用程序
简介:通过复制应用程序代码并提供链接PHP前端和本地MySQL数据库的参数,将LAMP对战应用程序部署到先前启动的Lightsail实例中。完成后,Apache/PHP前端和MySQL数据库将在同一主机上运行。您将应用程序代码部署到Lightsail实例中,以及配置PHP应用程序和本地运行的MySQL数据库之间的连接。
1、使用SSH连接到您的LAMP实例(可以使用Web界面的SSH 或者使用putty连接工具进行连接)
2、LAMP Bitnami映像安装了一些默认的网页,您需要将其删除,以便为后面部署PHP应用程序:
cd /opt/bitnami/apache2/htdocs && rm -rf *
3、使用Git将应用程序代码克隆到服务器上:
**
wget https://s3-us-west-2.amazonaws.com/us-west-2-aws-training/awsu-spl/spl-220/scripts/todo.zip -O /tmp/todo.zip
unzip /tmp/todo.zip
**
4、PHP应用程序使用文件(config.conf)来保存连接到数据库所需的信息(数据库主机名,用户名和密码)。您必须创建一个目录来存放文件,并使用bitnami用户成为所有着:
**
sudo mkdir /opt/bitnami/apache2/configs && \
sudo chown bitnami:bitnami /opt/bitnami/apache2/configs
**
注意:作为最佳的实践,请勿将您的敏感信息储存在Web服务器的文档根目录中,理想情况下,在生产中,您将使用秘密管理解决方案,例如AWS Secrets Manager
5、将config.php文件移动到配置目录中(/opt/bitnami/apache2/configs/)
sudo mv /opt/bitnami/apache2/htdocs/config.php /opt/bitnami/apache2/configs/config.php
6、到处环境变量以帮助编辑配置文件,请注意,实例数据库的默认密码存储在主目录(/home/bitnami/bitnami_application_password)中的文件中。
**
ENDPOINT=localhost && \
username=root && \
PASSWORD=$(cat /home/bitnami/bitnami_application_password)
**
7、验证环境变量:
echo "Endpoint = "$ENDPOINT && echo "username = "$username && echo "Password = "$PASSWORD
8、备份原始配置文件:
cp /opt/bitnami/apache2/configs/config.php /opt/bitnami/apache2/configs/config.php.bak
9、创建新配置文件已使用本地安装的数据库。以下命令使用sed浏览配置文件并将占位符替换为您在上一步中设置的环境变量的值,它将这些值写入新文件(cibfug.php.monolithic):
**
cat /opt/bitnami/apache2/configs/config.php | \
sed "s//$ENDPOINT/; \
s//$username/; \
s//$PASSWORD/;" \
> /opt/bitnami/apache2/configs/config.php.monolithic
**
10、通过确保配置文件中的值与环境变量的值匹配来验证单片配置文件是否正确:
cat /opt/bitnami/apache2/configs/config.php.monolithic
11、将配置文件投入生产:
cp /opt/bitnami/apache2/configs/config.php.monolithic /opt/bitnami/apache2/configs/config.php
12、通过确保为生产配置文件显示的值与单个文件的值匹配,验证生产中是否正在使用正确的配置文件:
cat /opt/bitnami/apache2/configs/config.php
请注意,更新配置文件后,您的PHP应用程序连接到本地数据库引擎;
在实际应用程序中,您将定义如何为生产准备数据库的过程,对于演示应用程序,您需要运行PHP脚本:
13、打开Web浏览器窗口选项卡准备数据库,然后键入:
示例:http://PUBLIC-IP/install.php
注意请将PUBLIC-IP替换为您的Lightsail实例的公有IP地址
14、在浏览器中,通过以下方式导航到正在运行中的应用:
进入: http://PUBLIC-IP