เมื่อ "dockerizing" แอปพลิเคชันASP.NET Core 3.1 MVCฉันได้รับผลลัพธ์ดังต่อไปนี้:
docker run -dt -v "C:\Users\admin\vsdbg\vs2017u5:/remote_debugger:rw" -v "D:\xxx\yyy\Spikes\DockerizedWebApp1\DockerizedWebApp1:/app" -v "D:\xxx\yyy\Spikes\DockerizedWebApp1:/src/" -v "C:\Users\admin\.nuget\packages\:/root/.nuget/fallbackpackages2" -v "C:\Program Files\dotnet\sdk\NuGetFallbackFolder:/root/.nuget/fallbackpackages" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "ASPNETCORE_LOGGING__CONSOLE__DISABLECOLORS=true" -e "ASPNETCORE_ENVIRONMENT=Development" -e "NUGET_PACKAGES=/root/.nuget/fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=/root/.nuget/fallbackpackages;/root/.nuget/fallbackpackages2" -P --name DockerizedWebApp1 --entrypoint tail dockerizedwebapp1:dev -f /dev/null
docker: Error response from daemon: status code not OK but 500: {"Message":"Unhandled exception: Drive has not been shared"}.
See 'docker run --help'.
C:\Users\admin\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.10.6\build\Container.targets(198,5): error CTC1015: Docker command failed with exit code 125.
C:\Users\admin\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.10.6\build\Container.targets(198,5): error CTC1015: docker: Error response from daemon: status code not OK but 500: {"Message":"Unhandled exception: Drive has not been shared"}.
C:\Users\admin\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.10.6\build\Container.targets(198,5): error CTC1015: See 'docker run --help'.
C:\Users\admin\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.10.6\build\Container.targets(198,5): error CTC1015: If the error persists, try restarting Docker Desktop.
ไม่จำเป็นต้องพูดว่า ' นักเทียบท่าทำงาน - ช่วยเหลือ ' ไม่ได้ช่วยอะไรเลย (ลิงค์ / จุดยึดที่ขาดหายไปในเอกสารนักเทียบท่า ฯลฯ )
ข้อมูลเพิ่มเติมบางส่วน:
- การประยุกต์ใช้เป็นสิ่งที่ VS2019 โครงโดยไม่มีการแก้ไขใด ๆ
- ภาพนักเทียบท่าคือ Linux ( อันที่ฉันไม่สามารถบอกได้ )
- เวอร์ชันของ Docker คือ19.03.5, สร้าง 633a0ea
เนื่องจากฉันไม่คุ้นเคยกับ Linux ข้อผิดพลาดนี้จึงกลายเป็นเหมือน "show-stopper" สำหรับฉัน บางที Linux ไม่ได้รับคำแนะนำให้ติดตั้งไดรฟ์? แต่อันไหน ข้อความไม่ได้บอกว่า ...
บางที Windows ต้องแชร์ไดรฟ์หรือจับคู่โฟลเดอร์กับไดรฟ์ที่ต้องแชร์หรือไม่ ข้อความไม่ได้พูดอย่างนี้ ...
นี่คือภาพหน้าจอของแผงควบคุม Docker:
และนี่คือ Dockerfile:
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 80
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["DockerizedWebApp1/DockerizedWebApp1.csproj", "DockerizedWebApp1/"]
RUN dotnet restore "DockerizedWebApp1/DockerizedWebApp1.csproj"
COPY . .
WORKDIR "/src/DockerizedWebApp1"
RUN dotnet build "DockerizedWebApp1.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "DockerizedWebApp1.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "DockerizedWebApp1.dl"]
ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมมาก ขอบคุณล่วงหน้า!