39 lines
1.2 KiB
Docker
39 lines
1.2 KiB
Docker
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
|
|||
|
|
WORKDIR /repo
|
||
|
|
|
||
|
|
COPY Directory.Build.props .
|
||
|
|
COPY global.json .
|
||
|
|
COPY src/Directory.Build.props src/
|
||
|
|
COPY src/Directory.Packages.props src/
|
||
|
|
|
||
|
|
COPY src/FiscalOS.Core/FiscalOS.Core.csproj src/FiscalOS.Core/
|
||
|
|
COPY src/FiscalOS.Infra/FiscalOS.Infra.csproj src/FiscalOS.Infra/
|
||
|
|
COPY src/FiscalOS.ServiceDefaults/FiscalOS.ServiceDefaults.csproj src/FiscalOS.ServiceDefaults/
|
||
|
|
COPY src/FiscalOS.API/FiscalOS.API.csproj src/FiscalOS.API/
|
||
|
|
COPY src/FiscalOS.AdminCLI/FiscalOS.AdminCLI.csproj src/FiscalOS.AdminCLI/
|
||
|
|
|
||
|
|
RUN dotnet restore src/FiscalOS.API/FiscalOS.API.csproj && \
|
||
|
|
dotnet restore src/FiscalOS.AdminCLI/FiscalOS.AdminCLI.csproj
|
||
|
|
|
||
|
|
COPY src/ src/
|
||
|
|
|
||
|
|
RUN dotnet publish src/FiscalOS.API/FiscalOS.API.csproj \
|
||
|
|
-c Release \
|
||
|
|
-o /publish/api \
|
||
|
|
--no-restore && \
|
||
|
|
dotnet publish src/FiscalOS.AdminCLI/FiscalOS.AdminCLI.csproj \
|
||
|
|
-c Release \
|
||
|
|
-o /publish/admincli \
|
||
|
|
--no-restore
|
||
|
|
|
||
|
|
FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS final
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
COPY --from=build /publish/api .
|
||
|
|
COPY --from=build /publish/admincli /usr/local/lib/admincli
|
||
|
|
|
||
|
|
ENV PATH="/usr/local/lib/admincli:${PATH}"
|
||
|
|
|
||
|
|
EXPOSE 8080
|
||
|
|
ENTRYPOINT ["dotnet", "FiscalOS.API.dll"]
|