Dockerfile 754 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. # syntax=docker/dockerfile:1.4
  2. FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:6.0 AS base
  3. WORKDIR /src
  4. COPY aspnetapp.csproj ./
  5. RUN ["dotnet", "restore"]
  6. FROM base as builder
  7. COPY . .
  8. CMD ["dotnet", "build", "-c", "-o", "/build"]
  9. FROM builder as dev-envs
  10. RUN <<EOF
  11. apt-get update
  12. apt-get install -y git
  13. EOF
  14. RUN <<EOF
  15. useradd -s /bin/bash -m vscode
  16. groupadd docker
  17. usermod -aG docker vscode
  18. EOF
  19. # install Docker tools (cli, buildx, compose)
  20. COPY --from=gloursdocker/docker / /
  21. CMD ["dotnet", "run"]
  22. FROM builder AS publisher
  23. RUN ["dotnet", "publish", "-c", "Release", "-o", "/build"]
  24. FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/aspnet:6.0
  25. WORKDIR /app
  26. COPY --from=publisher /build .
  27. CMD ["dotnet", "aspnetapp.dll"]