簡體   English   中英

已裝載卷的 Azure 容器實例上的數據丟失

[英]Data loss on Azure Container Instance with mounted volume

我剛剛在 azure 上創建了一個容器實例,其中包含一個 sql server docker 映像和一個掛載的文件共享存儲作為卷。 事實是容器卡住了,所以我重新啟動了它。

重啟后,所有數據都沒了。 當我在本地重新啟動 docker 容器時,數據會因卷而保持存在,因此我無法理解 azure 上的行為。

關於這個的任何線索?

這是我運行以創建容器的 cli 命令

az container create --resource-group myresource-rg \
--name project-test-db \
--image mcr.microsoft.com/mssql/server:2019-latest \
--location westus2 \
--ports 1433 \
--memory 5  \
--environment-variables SA_PASSWORD=Password ACCEPT_EULA=Y \ 
--ip-address public \
--azure-file-volume-account-name projectteststorageacc \ 
--azure-file-volume-account-key \MyKey \ 
--azure-file-volume-share-name project-test-file-share \ 
--azure-file-volume-mount-path /databases

嘗試編輯您的命令如下

使用" "表示ACCEPT_EULA=Ykey-value對,如下所示。 並用SA_PASSWORD替換MSSQL_SA_PASSWORD

--environment-variables "MSSQL_SA_PASSWORD=Password" "ACCEPT_EULA=Y" \

SQL Server 映像的必需設置,至少為 8 個字符且滿足SQL Server 密碼要求的強密碼。 鑒於您已經設置了適當的密碼和存儲密鑰,以下命令對我來說很好用。 如果密碼不符合 SQL 標准,則此容器將失敗(重新啟動循環)。

PS /home/karthik> $Password = "MyStrongPassword"
PS /home/karthik> $key = "FO/R6WkZELhMzX02wi9KahtLtKppoSIJg/EcJLEnZajRm2uxXs0sb/APaCk1eRsNW31yijSjS1hFm5Rd4rdTew=="

az container create --resource-group Myrg \
--name project-test-db \
--image mcr.microsoft.com/mssql/server:2019-latest \
--location westus2 \
--ports 1433 \
--memory 5  \
--environment-variables "SA_PASSWORD=$Password" "ACCEPT_EULA=Y" \ 
--ip-address public \
--azure-file-volume-account-name kteststoragee \ 
--azure-file-volume-account-key $key \ 
--azure-file-volume-share-name ktestfs2 \ 
--azure-file-volume-mount-path /databases

在此處輸入圖片說明

在此處輸入圖片說明

如果 Azure 容器實例中有行為異常的容器,請首先使用az container logs查看其日志,然后使用az container attach流式傳輸其標准輸出和標准錯誤。

az container attach命令在容器啟動期間提供診斷信息。 容器啟動后,它會將 STDOUT 和 STDERR 流式傳輸到您的本地控制台。

請參閱: 快速入門:使用 Docker 運行 SQL Server 容器映像Docker 運行命令失敗,並出現 Accept-Eula 協議錯誤 #199

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM