首頁 >web前端 >js教程 >使用 Python 和 AWS CDK 建立 Pokédex:在幾分鐘內建立您自己的 Web 應用程式的逐步指南

使用 Python 和 AWS CDK 建立 Pokédex:在幾分鐘內建立您自己的 Web 應用程式的逐步指南

Susan Sarandon
Susan Sarandon原創
2024-12-31 17:58:10408瀏覽

你是神奇寶貝粉絲嗎?肯定是的!這些奇妙的生物透過電玩遊戲、電視劇、電影等擄獲了我們的心。但是您是否曾經夢想過擁有自己的神奇寶貝圖鑑來探索每個神奇寶貝的多樣性和獨特特徵?

今天是你的幸運日。在這篇文章中,我將逐步指導您使用 AWS CDK、Python 和 Pokémon 公共 API 在 20 分鐘內創建自己的 Pokédex。我們給你而不是建議!

Construyendo una Pokédex con Python y AWS CDK: Una guía paso a paso para crear tu propia aplicación web en menos de minutos

先決條件

開始之前,請確保您具備以下主題的基本知識:

1。熟悉AWS及其控制台
2. Python基礎
3.命令列體驗

工具設定

首先,我們需要設定必要的工具來創建我們的 Pokédex。下面,我為您列出了我們將要使用的工具清單:

  • AWS 帳戶
  • AWS CLI
  • AWS CDK
  • Python 3.9 或更高版本
  • 普通 Javascript
  • 您選擇的程式碼編輯器

我們的工作環境配置

我們必須做的第一件事是配置我們的工作環境以便能夠部署我們的解決方案。請依照以下步驟操作:

權限

遵循AWS推薦的良好實踐,我們必須建立一個使用者並僅分配我們專案所需的權限。為此:

  1. 存取 AWS 控制台.signup#/start/email)
  2. 到 IAM 部分。
  3. 建立使用者並使用 [AWS 存取金鑰] 設定存取權限。

設定完成後,指派必要的權限以使用 CDK。實現此目的的一種方法是將具有權限的策略直接指派給使用者。

Construyendo una Pokédex con Python y AWS CDK: Una guía paso a paso para crear tu propia aplicación web en menos de minutos

此後,使用新建立的憑證配置您的控制台

aws configure
// Nos solicitará la siguiente información
AWS Access Key ID [None]:  
AWS Secret Access Key [None]: 
Default region name [None]: 
Default output format [None]:

建立CDK項目

讓我們使用 Python 建立專案。開啟終端機並執行以下命令:

cdk init app --語言 python

這將建立一個以您的專案名稱命名的資料夾,其中包含 CDK 所需的檔案。其中有 app.py 文件,我們將在其中指定我們的應用程式。也會創建一個虛擬 Python 環境,該環境會自動啟動。

S3 儲存桶創建

在此步驟中,我們將建立 S3 儲存桶,其中將包含 Pokedex 網站的檔案。開啟app.py文件,修改如下:

從構造導入構造
從 aws_cdk 導入(
    堆,
    aws_s3 作為 s3,
    aws_s3_deployment 作為 s3deploy,
    核
)


類別 CdkStack(堆疊):

    def __init__(self,scope:Construct,construct_id:str,**kwargs)->;沒有任何:
        super().__init__(範圍,construct_id,**kwargs)

        pokeBucket = s3.Bucket(self,>



<p>這裡我們建立一個名為 CdkStack 的類,它代表一個 AWS CloudFormation 堆疊,一個可管理的 AWS 資源集合。在類別建構子中,我們建立 s3.Bucket 類別的實例,它代表一個 S3 儲存桶。參數說明如下:</p>

<ol>
<li>
<strong>pokebuck</strong>:<em>堆疊內資源的識別碼。 </em>
</li>
<li>
<strong>website_index_document</strong>:<em>當儲存桶作為網站存取時將顯示的文件名稱。在本例中,它將是位於「static_site」資料夾中的index.html 檔案。 </em>
</li>
<li>
<strong>website_error_document</strong>:<em>作為網站存取儲存桶時發生錯誤時將顯示的文件名稱。在本例中,它將是檔案 error.html。 </em>
</li>
<li>
<strong>public_read_access</strong>:<em>指示儲存桶是否具有公用讀取存取權的值。我們將其設為 True,以便任何人都可以看到我們的 Pokedex 網站。 </em>
</li>
<li>
<strong>removal_policy</strong>:<em>移除堆疊時將套用於儲存桶的政策。我們指派值 core.RemovalPolicy.DESTROY ,以便在刪除堆疊時刪除儲存桶。 </em>
</li>
</ol>

<p>我們也建立了 s3deploy.BucketDeployment 類別的實例,它表示將靜態網站部署到 S3 儲存桶。 <br>
我們傳遞以下參數:</p><ol>
<li>
<strong>pokedex-deployment</strong>:<em>堆疊中資源的識別碼。 </em>
</li>
<li>
<strong>來源</strong>:<em>包含我們要部署的檔案的來源清單。在本例中,我們使用 s3deploy.Source.asset 方法來指示檔案位於專案的 ./static_site 資料夾中。 </em>
</li>
<li>
<strong>destination_bucket</strong>:<em>我們將部署檔案的 S3 儲存桶。在本例中,它是我們之前創建的儲存桶。 </em>
</li>
</ol>

<h2>
  
  
  載入靜態網站
</h2>

<p>現在我們將載入顯示神奇寶貝資訊的靜態網站。為此,我們將使用 GitHub 儲存庫、cdk 分支、static_site 資料夾中找到的程式碼。此程式碼是一個靜態網站,使用普通 JavaScript,透過 Axios 與 Pokémon v2 Web 公共 API 進行通訊。 </p>

<blockquote>
<p><em>注意:這個專案並不是要成為一個完整的前端解決方案,而是提供與 Pokémon 公共 API 相關的不同工作可能性。前端可以完全改進,接受建議和貢獻</em></p>
</blockquote>

<h2>
  
  
  部署部署部署!
</h2>

<p>我們現在已準備好部署應用程式的一切。為此,我們將使用 AWS CDK 命令來建立和管理 AWS 中的基礎架構。指令如下:</p>

<ol>
<li>
<strong>cdk bootstrap</strong>:透過建立將儲存 CloudFormation 範本和應用程式工件的 S3 儲存桶來為 CDK 準備 AWS 環境。您只需為我們使用的每個 AWS 帳戶和區域執行一次。 </li>
<li>
<strong>cdk Synth</strong>:產生代表我們的應用程式的 CloudFormation 範本並將其顯示在標準輸出上。這樣我們就可以驗證我們的應用程式是否定義良好並且不存在語法或邏輯錯誤。 </li>
<li>
<strong>cdk部署</strong>:建立和/或更新代表我們的應用程式的CloudFormation堆疊並將資源部署到AWS。 </li>
</ol>

<p>在這個過程中,我們會一步一步從控制台取得資訊。 </p>

<p><img src="https://img.php.cn/upload/article/000/000/000/173563909767924.jpg" alt="Construyendo una Pokédex con Python y AWS CDK: Una guía paso a paso para crear tu propia aplicación web en menos de minutos"></p>

<p>作為建議,最好訪問控制台並查看 AWS CloudFormation 部分,這樣我們就可以觀察事件以及在我們的帳戶中執行的每個操作。 </p>

<h2>
  
  
  示範版
</h2>

<p><img src="https://img.php.cn/upload/article/000/000/000/173563909972434.jpg" alt="Construyendo una Pokédex con Python y AWS CDK: Una guía paso a paso para crear tu propia aplicación web en menos de minutos"></p><h2>
  
  
  結論
</h2>

<p>恭喜!您已使用 AWS CDK、Python 和 Pokémon 公共 API 在不到 15 分鐘的時間內創建了自己的 Pokedex。現在您可以從您自己的網頁應用程式中探索所有神奇寶貝及其特徵。 </p>

<p>如果您喜歡本教程,請隨時分享並留下您的評論。您還想為您的圖鑑添加哪些其他功能?請告訴我! </p>

<p><img src="https://img.php.cn/upload/article/000/000/000/173563910048019.jpg" alt="Construyendo una Pokédex con Python y AWS CDK: Una guía paso a paso para crear tu propia aplicación web en menos de minutos"></p>


          

            
        

以上是使用 Python 和 AWS CDK 建立 Pokédex:在幾分鐘內建立您自己的 Web 應用程式的逐步指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn