在 Docker 中執行 ASP.NET Core 程式時可能會出現下面的警告訊息:
原因是 ASP.NET Core MVC 在執行時會在 /root/.aspnet/DataProtection-Keys 中建立金鑰,若此金鑰變更,則需要重新登入。
想要將此金鑰保留,可以在執行 docker 時將金鑰儲存的路徑映射到主機中,例如放到家目錄的 my_project/DataProtection-Keys 路徑下:
參考資料:
Persisting keys when hosting in a Docker container
warn: Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository[60]
Storing keys in a directory '/root/.aspnet/DataProtection-Keys' that may not be persisted outside of the container.
Protected data will be unavailable when container is destroyed.
原因是 ASP.NET Core MVC 在執行時會在 /root/.aspnet/DataProtection-Keys 中建立金鑰,若此金鑰變更,則需要重新登入。
想要將此金鑰保留,可以在執行 docker 時將金鑰儲存的路徑映射到主機中,例如放到家目錄的 my_project/DataProtection-Keys 路徑下:
docker run -v ~/my_project/DataProtection-Keys:/root/.aspnet/DataProtection-Keys my_docker_image_name
參考資料:
Persisting keys when hosting in a Docker container
留言
張貼留言
如果有任何問題、建議、想說的話或文章題目推薦,都歡迎留言或來信: a@ruyut.com