2017年3月31日 星期五

.Net Core 佈署到 docker上出現錯誤 The library 'libhostpolicy.so' required to execute the application was not found

使用 VS 2015建一個新 ASP.Net Core專案,再手動升級到 1.1後佈署到 docker時,出現無法正常執行的狀況,使用 docker logs @ConteainName時就出現 The library 'libhostpolicy.so' required to execute the application was not found錯誤訊息,可是之前也用同樣的方式也把另一個專案放在 docker上是沒有問題了,後來發現其原因可能發生在我把專案 package在使用 nuget升級時,原本
Microsoft.NetCore.App這個部份被改寫了,原本在 project.json的寫法如下:
 "Microsoft.NETCore.App": {
      "version": "1.0.1",
      "type": "platform"
    }

升級後就變成
 "Microsoft.AspNetCore.App": "1.1.0",  => type的設定就不見了

所以只要再把成如下寫法,把 type加回去即可
 "Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    }

參考文件
Every Other "dotnet run" command fails with `libhostpolicy.so` error #5059

沒有留言:

張貼留言