>本文檔詳細介紹了使用Django和AWS ECS將經典遊戲模擬部署為Web應用程序。 讓我們簡化說明以確保清晰度。
目錄的表
介紹
>這個項目將約翰·康威(John Conway)的生命遊戲實現為Django Web應用程序,該應用程序已在AWS ECS上部署,以供可伸縮性和可靠性。 這表明了容器編排如何現代化經典模擬。
先決條件
git clone https://github.com/UkemeSkywalker/game_of_life
>
項目設置 克隆後,導航到項目目錄(
)。>cd game_of_life
項目結構:
AWS基礎架構部署
<code>game-of-life/ ├── Dockerfile ├── buildspec.yml ├── requirements.txt ├── manage.py ├── game_of_life/ (Django app) └── ecs/ (ECS deployment files)</code>
1。 ECR存儲庫的創建:創建一個啟用圖像掃描的ECR存儲庫:
>
game-of-life
<code class="language-bash">aws ecr create-repository --repository-name game-of-life --image-scanning-configuration scanOnPush=true</code>
2。環境變量導出:導出必要的環境變量:
測試ECR登錄:
<code class="language-bash">export AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text) export AWS_REGION=us-east-1 export ECR_REPOSITORY_URI=$AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/game-of-life</code>3。 IAM角色配置:
創建一個名為
的IAM角色。
4。 ECS群集創建:使用Fargate創建一個名為game-of-life
的ECS群集:
<code>game-of-life/ ├── Dockerfile ├── buildspec.yml ├── requirements.txt ├── manage.py ├── game_of_life/ (Django app) └── ecs/ (ECS deployment files)</code>
docker映像構建和推動
>5。構建Docker映像:構建Docker映像:
<code class="language-bash">aws ecr create-repository --repository-name game-of-life --image-scanning-configuration scanOnPush=true</code>
6。標記並推動圖像:
標籤,然後將圖像推到ECR:
<code class="language-bash">export AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text) export AWS_REGION=us-east-1 export ECR_REPOSITORY_URI=$AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/game-of-life</code>
>任務定義創建
7。更新任務定義文件:
使用>。 。
ecs/
task-definition.json
8。註冊任務定義:sed
註冊任務定義:
<code class="language-bash">aws ecr get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com</code>
遊戲服務部署
9。服務詳細信息和負載平衡:在AWS ECS控制台中,創建一個名為的新服務,選擇新註冊的任務定義,並使用應用程序負載均衡器啟用負載平衡。
game-of-life-svc
>訪問已部署的遊戲
>10。訪問負載均衡器端點:>一旦部署,從服務詳細信息中獲取負載平衡器DNS名稱,並在瀏覽器中訪問應用程序。
結論
這種部署成功地展示了使用容器化和雲基礎架構現代化的經典應用程序。 Django和AWS ECS的使用為生活遊戲提供了可擴展可靠的平台。以上是Django的生活遊戲遇到了AWS ECS - 最終的部署黑客!的詳細內容。更多資訊請關注PHP中文網其他相關文章!