將 Django 映象推送到登錄檔
在本教程中,您將使用在本地構建的 Python Django 應用容器映象,並將其部署到 Azure 容器登錄檔 (ACR) 或 Docker Hub。
建立容器登錄檔
建立用於推送映象的容器登錄檔。有關如何向登錄檔進行身份驗證和使用登錄檔的更多資訊,請參閱使用容器登錄檔。
確保您建立的登錄檔終結點在 VS Code 的容器瀏覽器中的登錄檔下可見

Django 應用設定
-
在 Django 專案的
settings.py檔案中,修改ALLOWED_HOSTS列表,使其包含您打算部署應用的根 URL。例如,以下程式碼假設部署到名為 "vsdocs-django-sample-container" 的 Azure 應用服務 (azurewebsites.net)ALLOWED_HOSTS = [ # Example host name only; customize to your specific host "vsdocs-django-sample-container.azurewebsites.net" ]如果沒有此條目,您在部署後將看到一條 "DisallowedHost" 訊息,指示您將網站域新增到
ALLOWED_HOSTS。這將需要您再次重建、推送和重新部署映象。 -
在命令面板 (⇧⌘P (Windows, Linux Ctrl+Shift+P))上,選擇容器映象:構建映象...以使用新設定重建映象。
提示:如果您想在多個託管服務上測試生產中的映象,您只需在 ALLOWED_HOSTS 中輸入
"*"。
將映象推送到登錄檔
宣告 ALLOWED_HOSTS 後,下一步是將 Django 映象推送到容器登錄檔
-
開啟命令面板 (⇧⌘P (Windows, Linux Ctrl+Shift+P)) 並選擇容器映象:推送...。
-
選擇您剛剛構建的映象以推送到登錄檔。
-
選擇您建立的登錄檔以推送到其中。這將有助於正確標記映象。

-
一旦選擇了登錄檔和完整標籤,映象將被推送。上傳進度將顯示在終端視窗中。
-
完成後,展開容器瀏覽器中的登錄檔 > Azure(或 DockerHub)節點,然後展開登錄檔和映象名稱以檢視確切的映象。(您可能需要重新整理容器瀏覽器。)

提示:第一次推送映象時,您將看到 VS Code 上傳構成映象的每個層。然而,後續的推送操作將只更新從第一個已更改的層開始的層。由於您的應用程式碼通常是更改最頻繁的部分,因此這通常是應用程式碼複製到 Dockerfile 最後幾行的原因。要檢視此內部迴圈的實際操作,請對程式碼進行小幅更改,重建映象,然後再次推送到登錄檔。
既然您已將映象推送到登錄檔,就可以將其部署到任何支援容器的雲服務。有關部署到 Azure 應用服務的詳細資訊,請參閱部署容器。