首頁 > 後端開發 > Python教學 > 使用 Bitnami Django 堆疊在 AWS Lightsail 上從 GitHub 部署 Django 應用程式

使用 Bitnami Django 堆疊在 AWS Lightsail 上從 GitHub 部署 Django 應用程式

Mary-Kate Olsen
發布: 2024-12-23 04:58:38
原創
780 人瀏覽過

在本教程中,我將引導您使用Bitnami 將GitHub 上託管的Django Web 應用程式 部署到AWS Lightsail 實例 Dango堆疊。 Bitnami 透過提供預先設定的生產就緒環境來簡化部署,其中包括 Django、Web 伺服器(Nginx 或 Apache)和資料庫(PostgreSQL 或 MySQL)。

在本教學結束時,您將能夠以最少的配置在 AWS Lightsail 上啟動並執行 來自 GitHub 的 Django 專案


為什麼選擇 AWS Lightsail 進行 Django 部署?

AWS Lightsail 是一種易於使用且經濟實惠的雲端服務,非常適合託管 Django 應用程式。它為虛擬專用伺服器(實例)提供簡單的管理功能,例如靜態 IP、預先配置堆疊和可預測的定價。這就是為什麼它是 Django 的絕佳選擇:

  • 價格實惠:前期成本低,價格可預測。
  • 簡化設定:易於使用的介面,可快速部署。
  • 可擴充性:可以很好地擴展中小型應用程式。
  • 預先配置的堆疊:簡化的環境設置,包括 Django。

逐步指南

1. 使用 Bitnami Django Stack 建立 Lightsail 實例

登入 AWS Lightsail:

  • 前往 Amazon Lightsail 主控台。

建立一個新實例:

  • 在 Lightsail 儀表板中點選 建立實例
  • 應用程式 下,從 Bitnami 堆疊選項中選擇 Django

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack

  • 選擇最接近目標受眾的區域以減少延遲。
  • 選擇實例計劃。每月 5 美元的計劃適合小型 Django 應用程式。

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack

  • 為您的實例命名(例如 django-app-bitnami)。
  • 下載或使用現有的SSH 金鑰連接到您的執行個體。
  • 點選建立實例啟動您的Django實例。

2. 存取您的 Lightsail 實例

您的 Lightsail 執行個體運行後,您需要透過 SSH 存取它。

取得靜態IP:

  • 前往 Lightsail 控制台中的 網路 標籤。
  • 指派靜態 IP 並將其附加到您的 Lightsail 實例。此靜態 IP 將用於存取您的 Django 應用程式。

透過 SSH 連線到實例:

  • 您可以透過點選 連線 直接從 Lightsail 控制台進行 SSH,或使用終端指令:
ssh -i /path/to/your/ssh-key.pem bitnami@<your_instance_ip>
登入後複製
登入後複製

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack


3. 從 GitHub 複製您的 Django 專案

現在您已連接到 Lightsail 實例,您可以從 GitHub 複製您的 Django 專案。

安裝 Git:

首先,請確保您的 Lightsail 實例上安裝了 Git:

sudo apt update
sudo apt install git
登入後複製
登入後複製

複製您的 GitHub 儲存庫:

現在,導航到您要儲存項目的目錄(例如 /home/bitnami/)並複製您的儲存庫:

cd /home/bitnami
git clone https://github.com/yourusername/your-django-app.git
登入後複製

將 https://github.com/yourusername/your-django-app.git 替換為 GitHub 儲存庫的實際 URL。


4. 配置 Django 設定

複製 Django 專案後,您需要配置 settings.py 檔案以確保其在生產環境中運作。

存取 Django 應用程式:

  • 導航到專案目錄。預設情況下,Bitnami 將 Django 安裝在 /opt/bitnami/apps/django/django-project/ 中,但您的應用程式將位於您從 GitHub 複製的資料夾中。
cd /home/bitnami/your-django-app
登入後複製

編輯settings.py檔:

使用nano或vi等文字編輯器修改您的settings.py:

sudo nano your-django-app/yourproject/settings.py
登入後複製

更改以下設定:

  • ALLOWED_HOSTS: 將您的 Lightsail 靜態 IP 或網域(如果有)新增至 ALLOWED_HOSTS 清單:
ALLOWED_HOSTS = ['<your_instance_ip>', 'yourdomain.com']
登入後複製
  • 資料庫設定: Bitnami 堆疊預設使用 PostgreSQL,因此如果您使用 PostgreSQL,請使用預設資料庫設定:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'bitnami_django',
        'USER': 'bn_django',
        'PASSWORD': 'yourpassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}
登入後複製
  • 靜態檔案配置: 確保以下靜態檔案設定正確:
STATIC_URL = '/static/'
STATIC_ROOT = '/home/bitnami/your-django-app/static'
登入後複製

5. 運行遷移並收集靜態檔案

配置設定後,執行遷移並收集靜態檔案。

運行 Django 遷移:

應用任何資料庫遷移:

sudo python3 manage.py migrate
登入後複製

收集靜態檔案:

執行以下命令將所有靜態檔案收集到一個中心位置:

ssh -i /path/to/your/ssh-key.pem bitnami@<your_instance_ip>
登入後複製
登入後複製

6. 在瀏覽器中存取應用程式

完成上述設定後,您的 Django 應用程式應該可以透過 Lightsail 實例的靜態 IP 存取。

  • 開啟瀏覽器並輸入 Lightsail 實例的靜態 IP:
sudo apt update
sudo apt install git
登入後複製
登入後複製

如果您已經部署了程式碼,您應該會看到 Django 歡迎頁面或您的應用程式。


嘗試使用“我的簡單待辦事項清單”應用程式

複製我的簡單待辦事項清單 Django 應用程式 並按照以下步驟將其部署在 AWS Lightsail 上。

Deploy a Django App from GitHub on AWS Lightsail Using the Bitnami Django Stack


結論

您已使用 Bitnami Django 堆疊 在 AWS Lightsail 上成功部署了來自 GitHubDjango 應用程式。透過此設置,您將擁有:

  • 預先配置、生產就緒的 Django 環境。
  • PostgreSQL 資料庫。

AWS Lightsail 與 Bitnami 為託管 Django 應用程式提供了一種簡單且經濟高效的解決方案。無論您是部署小型個人專案還是生產應用程序,此解決方案都能確保您的 Django 應用程式順利運行。


參考

  • AWS Lightsail 官方文件
  • Bitnami Django 堆疊文件
  • Django 官方文件

以上是使用 Bitnami Django 堆疊在 AWS Lightsail 上從 GitHub 部署 Django 應用程式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板