Tôi có một dự án được thiết lập để chạy cục bộ trong Docker với docker-compose. Cho đến gần đây, nó đã hoạt động tốt. Tôi không tin rằng tôi đã thay đổi bất cứ điều gì sẽ ảnh hưởng đến điều này (ngoại trừ có thể là nâng cấp VS?), Và tôi thậm chí đã thử quay lại với một cam kết cũ hơn. Trong mọi trường hợp, tôi hiện đang nhận được thông báo lỗi, xuất hiện trong cửa sổ đầu ra của Visual Studio dưới dạng:
docker exec -i f93fb2962a1e sh -c ""dotnet" --additionalProbingPath /root/.nuget/packages --additionalProbingPath /root/.nuget/fallbackpackages "bin/Debug/netcoreapp3.1/MattsTwitchBot.Web.dll" | tee /dev/console"
sh: 0: getcwd() failed: No such file or directory
It was not possible to find any installed .NET Core SDKs
Did you mean to run .NET Core SDK commands? Install a .NET Core SDK from:
https://aka.ms/dotnet-download
Tôi đã thử nhiều thứ khác nhau (thay đổi hình ảnh cơ sở trong tệp Docker, xóa hình ảnh và thùng chứa cũ, v.v.) nhưng tôi vẫn nhận được thông báo lỗi tương tự. Điều kỳ lạ là khi tôi thực hiện File-> New, Visual Studio tạo ra một tệp Docker trông rất giống nhau và nó hoạt động tốt. Tôi không biết vấn đề là gì, nhưng tôi hy vọng ai đó ở đây có thể phát hiện ra nó.
Repo đầy đủ của tôi có sẵn trên Github . Đây là docker cho dự án cốt lõi asp.net:
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["MattsTwitchBot.Web/MattsTwitchBot.Web.csproj", "MattsTwitchBot.Web/"]
COPY ["MattsTwitchBot.Core/MattsTwitchBot.Core.csproj", "MattsTwitchBot.Core/"]
RUN dotnet restore "MattsTwitchBot.Web/MattsTwitchBot.Web.csproj"
COPY . .
WORKDIR "/src/MattsTwitchBot.Web"
RUN dotnet build "MattsTwitchBot.Web.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "MattsTwitchBot.Web.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "MattsTwitchBot.Web.dll"]
và docker-compose cho giải pháp (ngay cả khi không có công cụ Couchbase tôi cũng gặp lỗi tương tự, nhưng tôi sẽ dán nó ở đây cho đầy đủ):
version: '3.4'
services:
couchbase:
image: couchbase:6.5.0-beta2
volumes:
- "./couchbasetwitchbot:/opt/couchbase/var" # couchbase data folder
ports:
- "8091-8096:8091-8096" # https://docs.couchbase.com/server/current/install/install-ports.html
- "11210-11211:11210-11211"
mattstwitchbot.web:
image: ${DOCKER_REGISTRY-}mattstwitchbotweb
build:
context: .
dockerfile: MattsTwitchBot.Web/Dockerfile
environment:
Couchbase__Servers__0: http://couchbase:8091/ # Reference to the "couchbase" service name on line 4
depends_on:
- couchbase # Reference to the "couchbase" service name on line 4
command: ["./wait-for-it.sh", "http://couchbase:8091"]