Repository navigation
Expand file tree
/
Copy pathDockerfile
More file actions
63 lines (50 loc) · 2.19 KB
/
Copy pathDockerfile
File metadata and controls
63 lines (50 loc) · 2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
FROM node:22-alpine AS frontend-build
WORKDIR /src/web
COPY src/Consensus.Web/package*.json ./
RUN npm ci
COPY src/Consensus.Web/ ./
RUN npm run build
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS backend-build
WORKDIR /src
COPY consensus.sln .
COPY Directory.Packages.props .
COPY src/Consensus.Api/Consensus.Api.csproj src/Consensus.Api/
COPY src/Consensus.Core/Consensus.Core.csproj src/Consensus.Core/
RUN dotnet restore src/Consensus.Api/Consensus.Api.csproj
COPY src/Consensus.Core/ src/Consensus.Core/
COPY src/Consensus.Api/ src/Consensus.Api/
COPY --from=frontend-build /src/web/dist /src/src/Consensus.Api/wwwroot
RUN dotnet publish src/Consensus.Api/Consensus.Api.csproj \
-c Release \
-o /app/publish \
--no-restore
FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS runtime
WORKDIR /app
COPY --from=backend-build /app/publish .
RUN mkdir -p /app/output/logs /app/output/responses
ENV ASPNETCORE_ENVIRONMENT=Production \
ASPNETCORE_URLS=http://+:8080 \
Consensus__ApiEndpoint="https://openrouter.ai/api/v1" \
Consensus__ApiKey="" \
Consensus__Domain="General" \
Consensus__AgentTimeoutSeconds="120" \
Consensus__IncludeIndividualResponses="true" \
Consensus__Models__0="nvidia/nemotron-3-ultra-550b-a55b:free" \
Consensus__Models__1="openrouter/free" \
Consensus__Models__2="nvidia/nemotron-3-super-120b-a12b:free" \
Consensus__Models__3="qwen/qwen3.8-27b:free" \
Consensus__Models__4="google/gemma-4-31b-it:free" \
Consensus__Models__5="thinkingmachines/inkling:free" \
Consensus__Models__6="inclusionai/ling-3.1-flash" \
Consensus__Models__7="nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free" \
Consensus__Models__8="google/gemma-4-26b-a4b-it:free" \
Consensus__Models__9="thinkingmachines/inkling-small:free" \
Consensus__Models__10="apodex/apodex-1.1-mini:free" \
Consensus__Models__11="stealth/space-bunny-alpha" \
Consensus__Models__12="poolside/laguna-s-2.1:free" \
Consensus__Models__13="cohere/north-mini-code:free" \
Consensus__Models__14="poolside/laguna-xs-2.1:free" \
Consensus__Models__15="liquid/lfm-2.5-2.6b:free" \
OutputDirectory="/app/output"
EXPOSE 8080
ENTRYPOINT ["dotnet", "Consensus.Api.dll"]