📌  相关文章
📜  用于 aws lightsail 启动的 shell 脚本 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:11:15.093000             🧑  作者: Mango

用于 AWS Lightsail 启动的 Shell 脚本 - Shell/Bash

这里介绍一个用于 AWS Lightsail 启动的 Shell 脚本,可以通过该脚本快速部署您的应用程序。

目录
什么是 AWS Lightsail?

AWS Lightsail 是一个易于使用的虚拟服务器(VPS)平台,它为初学者和专业人士提供了一个简单而强大的选择,用于在云中启动和管理虚拟专用服务器(VPS)。

为什么要使用 Shell 脚本?

使用 Shell 脚本是部署 AWS Lightsail 实例的一种快速、方便和可靠的方法。通过编写 Shell 脚本,您可以简化配置和部署过程,并自动化您的任务,从而提高生产效率。

Shell 脚本实现的功能

以下是该 Shell 脚本实现的一些功能:

  • 安装必要的软件包
  • 下载和部署应用程序
  • 配置环境变量和数据库设置
  • 启动服务并设置开机自启动
如何使用 Shell 脚本?

使用 Shell 脚本非常简单:

  1. 首先,您需要在 AWS Lightsail 上创建一个实例。
  2. 在实例管理控制台中选择您的实例,然后单击“连接”按钮,以打开 SSH 终端。
  3. 使用以下命令将 Shell 脚本复制到实例上:
$ scp -i /path/to/keypair.pem script.sh ubuntu@<public-ip-address>:~/

其中,path/to/keypair.pem 是您的 SSH 密钥对的路径,public-ip-address 是您的 AWS Lightsail 实例的公共 IP 地址。

  1. 连接到实例并运行脚本:
$ ssh -i /path/to/keypair.pem ubuntu@<public-ip-address>
$ chmod +x script.sh
$ ./script.sh
Shell 脚本的代码片段

以下是该 Shell 脚本的代码片段:

#!/bin/bash

# 安装必要的软件包
sudo apt-get update
sudo apt-get install -y nginx mysql-server

# 下载和部署应用程序
cd /var/www/html/
sudo wget https://example.com/app.zip
sudo unzip app.zip

# 配置环境变量和数据库设置
sudo cp env-example .env
sudo mysql -u root -e "CREATE USER 'appuser' IDENTIFIED BY 'password';"
sudo mysql -u root -e "CREATE DATABASE appdb;"
sudo mysql -u root -e "GRANT ALL PRIVILEGES ON appdb.* TO 'appuser';"

# 启动服务并设置开机自启动
sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl enable mysql
sudo systemctl start mysql

以上代码将在 Ubuntu 环境下运行,安装 nginx 和 mysql,并将应用程序部署到 /var/www/html/ 目录下。该脚本还会创建一个名为 appuser 的 MySQL 用户,并在名为 appdb 的数据库中为该用户分配所有权限。最后,该脚本将启动 Nginx 和 MySQL 服务,并设置它们为自动启动。