久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

首頁開發(fā)教程亞馬遜VPS部署LAMP Web應(yīng)用程序教程

亞馬遜VPS部署LAMP Web應(yīng)用程序教程

2024-11-25 236

Amazon Lightsail是AWS提供的一個簡化版云計算平臺,又稱為虛擬專用服務(wù)器(VPS),旨在幫助開發(fā)人員和小型企業(yè)輕松創(chuàng)建和管理虛擬服務(wù)器。使用Lightsail可以快速部署Web應(yīng)用程序,同時享受與AWS更高級服務(wù)相同的可靠性和可擴(kuò)展性。本教程將詳細(xì)介紹如何在Amazon Lightsail上部署一個LAMP(Linux、Apache、MySQL 和 PHP)Web應(yīng)用程序。

新用戶注冊即可免費(fèi)使用亞馬遜VPS(Amazon Lightsail)三個月,還能獲得一年期50GB的內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)服務(wù)、一年期5GB的對象存儲捆綁包,以及三個月的精選容器、實(shí)例和數(shù)據(jù)庫捆綁包?。

亞馬遜VPS 3個月免費(fèi)領(lǐng)取地址:https://www.amazonaws.com/

亞馬遜VPS領(lǐng)取教程:

一、在亞馬遜VPS上創(chuàng)建LAMP Web應(yīng)用程序

本模塊將指導(dǎo)如何使用AWS CLI來配置LAMP堆棧。通過此過程,將通過預(yù)配置的LAMP藍(lán)圖在亞馬遜VPS上創(chuàng)建一個實(shí)例,并在創(chuàng)建過程中從GitHub倉庫安裝一個PHP應(yīng)用程序。

1、創(chuàng)建Lightsail實(shí)例

使用AWS CLI命令來創(chuàng)建亞馬遜VPS實(shí)例。下面是創(chuàng)建實(shí)例的命令:

aws lightsail create-instances \
--instance-names <name_of_your_instance> \
--availability-zone <availability_zone> \
--blueprint-id <blueprint_id> \
--bundle-id <bundle_id> \
--key-pair-name <key_pair_name> \
--user-data <user-data>

此命令中的參數(shù)說明:

  • 實(shí)例名稱:指定希望創(chuàng)建的實(shí)例名稱;
  • 可用區(qū):選擇希望部署實(shí)例的可用區(qū);
  • 藍(lán)圖 ID:選擇要使用的 Lightsail 藍(lán)圖 ID;
  • 捆綁包 ID:指定實(shí)例的計算資源配置,包括內(nèi)存、計算能力和存儲;
  • SSH 密鑰對:用于連接到實(shí)例的 SSH 密鑰對;
  • 用戶數(shù)據(jù):包含實(shí)例啟動時要執(zhí)行的自動配置任務(wù)的腳本。

注意:捆綁包代表一組資源,決定了實(shí)例的計算能力、內(nèi)存和存儲容量;藍(lán)圖則是配置了操作系統(tǒng)和常用軟件應(yīng)用的虛擬機(jī)映像。

2、定義用戶數(shù)據(jù)

如上所示,創(chuàng)建亞馬遜VPS實(shí)例時,可以提供用戶數(shù)據(jù),以便在實(shí)例啟動時執(zhí)行自動配置任務(wù)。例如,可以通過用戶數(shù)據(jù)部署 LAMP 堆棧。以下腳本示例將執(zhí)行以下操作:

  • 刪除默認(rèn)網(wǎng)站;
  • 從 GitHub 克隆示例 PHP 應(yīng)用程序并替換現(xiàn)有網(wǎng)站;
  • 設(shè)置必要的文件權(quán)限;
  • 將自動生成的數(shù)據(jù)庫密碼注入到應(yīng)用程序配置文件中;
  • 執(zhí)行 “init.sql” 腳本以創(chuàng)建數(shù)據(jù)庫并填充初始數(shù)據(jù)。
# remove default website
#-----------------------
cd /opt/bitnami/apache2/htdocs rm -rf *
# clone github repo
#------------------
/usr/bin/git clone -b loft https://github.com/mikegcoleman/todo-php.git .
# set write permissons on the settings file
#-----------------------------------
chown bitnami:daemon ./*
chmod 666 connectvalues.php
# inject database password into configuration file
#-------------------------------------------------
sed -i.bak "s/<password>/$(cat /home/bitnami/bitnami_application_password)/;" /opt/bitnami/apache2/htdocs/connectvalues.php
# create database
#----------------
cat /home/bitnami/htdocs/data/init.sql | /opt/bitnami/mariadb/bin/mysql -u root -p$(cat /home/bitnami/bitnami_application_password)

3、創(chuàng)建SSH密鑰對

為了連接到實(shí)例,需要一個 SSH 密鑰對。可以通過 AWS CLI 創(chuàng)建密鑰對。以下命令會生成一個名為 “LightsailGuide” 的密鑰對,并將公鑰和私鑰分別保存為 “lightsailguide.pub” 和 “lightsailguide”。

aws lightsail create-key-pair --key-pair-name LightsailGuide > ssh_key_response.json
cat ssh_key_response.json | jq -r '.publicKeyBase64' > lightsailguide.pub
cat ssh_key_response.json | jq -r '.privateKeyBase64' > lightsailguide
chmod 400 lightsailguide.pub lightsailguide

提示:可能需要安裝 “jq” 工具,這是一個處理 數(shù)據(jù)的命令行工具。

4、創(chuàng)建Lightsail實(shí)例

一切準(zhǔn)備就緒后,可以使用 AWS CLI 創(chuàng)建亞馬遜VPS實(shí)例。在本例中,我們將使用愛爾蘭(”eu-west-1″)區(qū)域,并選擇 “lamp_7” 作為藍(lán)圖 ID??梢赃\(yùn)行以下命令查看可用的藍(lán)圖列表:

aws lightsail get-blueprints

在創(chuàng)建亞馬遜VPS實(shí)例時,需要指定一個實(shí)例捆綁包。在本示例中,我們將使用 “micro_2_0” 捆綁包??梢赃\(yùn)行以下命令查看所有可用捆綁包的列表:

aws lightsail get-bundles

要通過用戶數(shù)據(jù)腳本和創(chuàng)建的 SSH 密鑰來創(chuàng)建 亞馬遜VPS 實(shí)例,請運(yùn)行以下命令:

# Create the Lightsail instance:
aws lightsail create-instances \
--instance-names "LightsailLampExample" \
--availability-zone eu-west-1a \
--blueprint-id lamp_7 \
--bundle-id micro_2_0 \
--key-pair-name LightsailGuide \
--user-data '# remove default website
#-----------------------
cd /opt/bitnami/apache2/htdocs rm -rf *
# clone github repo
#------------------
/usr/bin/git clone -b loft https://github.com/mikegcoleman/todo-php.git .
# set write permissons on the settings file
#-----------------------------------
chown bitnami:daemon ./*
chmod 666 connectvalues.php
# inject database password into configuration file
#-------------------------------------------------
sed -i.bak "s/<password>/$(cat /home/bitnami/bitnami_application_password)/;" /opt/bitnami/apache2/htdocs/connectvalues.php
# create database
#----------------
cat /home/bitnami/htdocs/data/init.sql | /opt/bitnami/mariadb/bin/mysql -u root -p$(cat /home/bitnami/bitnami_application_password)'

該命令會返回創(chuàng)建的實(shí)例的詳細(xì)信息,如下所示:

{
"operations": [
{
"id": "a49e1398-fb81-455a-8a50-3159c9bd9966",
"resourceName": "LightsailLampExample",
"resourceType": "Instance",
"createdAt": "2021-09-21T16:38:40.566000+02:00",
"location": {
"availabilityZone": "eu-west-1a",
"regionName": "eu-west-1"
},
"isTerminal": false,
"operationType": "CreateInstance",
"status": "Started",
"statusChangedAt": "2021-09-21T16:38:40.566000+02:00"
}
]
}

實(shí)例創(chuàng)建需要幾分鐘的時間??梢允褂靡韵旅顏頇z查實(shí)例的狀態(tài):

aws lightsail get-instance-state --instance-name LightsailLampExample

如果輸出如下,表示實(shí)例正在運(yùn)行,但用戶數(shù)據(jù)腳本可能仍在執(zhí)行中:

{
"state": {
"code": 16,
"name": "running"
}
}

要測試應(yīng)用程序,需要獲取實(shí)例的公共 IP 地址??梢赃\(yùn)行以下命令來獲?。?/p>

aws lightsail get-instance --instance-name LightsailLampExample | jq -r .instance.publicIpAddress

復(fù)制輸出的 IP 地址并將其粘貼到瀏覽器中,將看到正在運(yùn)行的應(yīng)用程序。

亞馬遜VPS部署LAMP Web應(yīng)用程序教程

二、清理資源

如果只是按本指南操作并體驗亞馬遜VPS,而不是部署生產(chǎn)環(huán)境中的服務(wù),請務(wù)必刪除所有創(chuàng)建的云資源。這將有助于避免 AWS 賬戶產(chǎn)生不必要的費(fèi)用。

1、刪除云基礎(chǔ)設(shè)施

使用亞馬遜VPS刪除實(shí)例非常簡單。只需輸入以下命令即可:

aws lightsail delete-instance --instance-name LightsailLampExample

2、驗證資源已刪除

可以通過以下命令驗證是否刪除了所有資源:

aws lightsail get-instances 
# the command should output the following
{
"instances": []
}

通過本教程,已經(jīng)成功部署了一個LAMP Web應(yīng)用程序到亞馬遜VPS。

  • 廣告合作

  • QQ群號:4114653

溫馨提示:
1、本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享網(wǎng)絡(luò)內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。郵箱:2942802716#qq.com(#改為@)。 2、本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)裁,轉(zhuǎn)載請注明出處“站長百科”和原文地址。

相關(guān)文章