SaaS-мониторинг Telegram: ядро (модули Cards/Kanban/Pipeline/Tenants/Settings/ Discovery, Api, Infrastructure), сервисы telegram/ai/ml/storage, фронт Vue, контракты и grpc-hosting, деплой-конфиги (dev/prod/observability/CI-раннер), Gitea Actions CI, документация (ТЗ, техдок, api-map, код-стайл, планы, бэклог). Текущее состояние: все этапы роадмапа 0–12 закрыты, сборка 5 sln 0/0, тесты 1340/130/52/38/9 зелёные.
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# storage-service: общий gRPC-сервис данных (вложения источников).
|
||||
#
|
||||
# КОНТЕКСТ СБОРКИ — корень репозитория: Deal.Storage.csproj ссылается на src/contracts/Deal.Proto.csproj
|
||||
# и src/grpc-hosting вне каталога сервиса. Запуск из корня:
|
||||
# docker build -f src/storage-service/Deal.Storage/Dockerfile .
|
||||
|
||||
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
|
||||
WORKDIR /repo
|
||||
|
||||
COPY src/contracts/Deal.Proto.csproj src/contracts/
|
||||
COPY src/grpc-hosting/Deal.Grpc.Hosting/Deal.Grpc.Hosting.csproj src/grpc-hosting/Deal.Grpc.Hosting/
|
||||
COPY src/storage-service/Directory.Build.props src/storage-service/
|
||||
COPY src/storage-service/Deal.Storage/Deal.Storage.csproj src/storage-service/Deal.Storage/
|
||||
RUN dotnet restore src/storage-service/Deal.Storage/Deal.Storage.csproj
|
||||
|
||||
COPY src/contracts/ src/contracts/
|
||||
COPY src/grpc-hosting/ src/grpc-hosting/
|
||||
COPY src/storage-service/Deal.Storage/ src/storage-service/Deal.Storage/
|
||||
RUN dotnet publish src/storage-service/Deal.Storage/Deal.Storage.csproj -c Release -o /app/publish
|
||||
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS final
|
||||
WORKDIR /app
|
||||
EXPOSE 5104
|
||||
COPY --from=build /app/publish .
|
||||
COPY --from=ghcr.io/grpc-ecosystem/grpc-health-probe:v0.4.35 /ko-app/grpc-health-probe /bin/grpc_health_probe
|
||||
|
||||
# Non-root: процесс работает пользователем deal (UID 10001); персистентных файлов нет.
|
||||
RUN useradd --uid 10001 --shell /usr/sbin/nologin --no-create-home deal
|
||||
ENV HOME=/tmp
|
||||
USER deal
|
||||
|
||||
ENTRYPOINT ["dotnet", "Deal.Storage.dll"]
|
||||
Reference in New Issue
Block a user