我有支持Docker的.NET Core 2.0应用程序。 Dockerfile是:
FROM microsoft/aspnetcore-build:2.0 AS build-env WORKDIR /app
COPY . ./
RUN dotnet publish -c Release -o out
FROM microsoft/aspnetcore:2.0
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "Myapp.dll"]
docker-compose.yml是:
version: '3'
services:
myapp:
build:
context: ./Myapp
dockerfile: Dockerfile
ports:
- "8000:8000"
我正在尝试执行docker-compose构建并收到下一个错误:
FROM只需要一个参数
请告知可能出现的问题。我根本不熟悉docker。我在/ app文件夹中有两个类似Dockerfile的项目。第一个项目构建成功,但第二个项目失败。
屏幕截图:1
答案 0 :(得分:0)
您在一行中混合了两条指令
FROM microsoft/aspnetcore-build:2.0 AS build-env WORKDIR /app
应该是
FROM microsoft/aspnetcore-build:2.0 AS build-env
WORKDIR /app
答案 1 :(得分:0)
我认为上面已经回答了这个问题,但是这里有另一种选择:在OpenShift上构建.NET Core 2.0应用程序。 真棒!不需要Dockerfiles等,你可以免费获得所有Kubernetes的优点。 Red Hat的容器开发套件是开源的,可将OpenShift直接带到您的桌面。 只是值得深思。