![](/img/trans.png)
[英]Connection refused while running .net core 2.0 web api on docker
[英].Net Core API running under docker
我有一個項目(.Net Core API),該項目在Docker下為Windows運行,並提供客戶可以上傳文件的服務。
我想將這些文件保存在服務器上(例如“ C:\\ TempFolder”),但是當我在調試模式下(使用docker)運行項目並通過代碼動態創建目錄時,出現錯誤:'System.IO.IOException:無效說法......”
CurrentDirectory是/ app,在DirectoryInfo FullPaths中,值是“ / app / C:\\ TempFolder”
當我在沒有docker的情況下運行應用程序時,它運行正常
聽起來可能很糟糕,但是我不得不問:
在docker下運行時,是否可以創建目錄(例如,在我有權限的地方,例如在本地PC或服務器上)?
這是我使用docker的第一個項目,所以...
您可以在啟動Docker容器時將Docker卷用作參數,或者在使用docker-compose時定義卷。
docker volume create my-vol
docker run -d --name devtest --mount source=my-vol,target=/app
或者使用docker-compose.yml映射docker卷:
volumes:
- my-volume:/app
或映射到相對於docker-compose.yml的目錄:
volumes:
- ./temp-dir:/app
請記住,容器內的代碼不會知道某些文件夾已映射到容器外部的存儲。
從主機角度看,映射到docker卷和映射到相對路徑之間的主要區別在於Docker將決定該卷在主機中的存儲位置以及誰可以訪問它,而相對路徑是您控制的目錄。
使用相對路徑時要注意的另一點是,請確保您在目錄上設置了權限,以便docker進程可以使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.