Add Docker support and enhance data models for tender details

- Introduced a .dockerignore file to optimize Docker builds by excluding unnecessary files.
- Updated the Dockerfile to use a Flutter base image, enabling web builds for the application.
- Added new data models for `Lot` and `OrganizationAddress` to represent tender details more accurately.
- Enhanced the `Organization` model to include `companyId` and a nested `address` field.
- Updated the `TenderData` model to include new fields such as `noticeTypeCode`, `formType`, and `lots`, reflecting the API response structure.
- Regenerated necessary code for data models to ensure compatibility with the updated structures.
This commit is contained in:
AmirReza Jamali
2026-06-03 13:32:42 +03:30
parent 83b77c05ef
commit dde66521f6
35 changed files with 1362 additions and 659 deletions
+22 -2
View File
@@ -1,3 +1,23 @@
FROM docker-mirror.ravanertebat.ir/hub/nginx:1.25.2-alpine3.18-slim
FROM docker-mirror.ravanertebat.ir/ghcr/cirruslabs/flutter:3.38.10 AS base
COPY ./artifacts/flutter/tm_pwa /usr/share/nginx/html
WORKDIR /app
RUN flutter config --enable-web
FROM base AS deps
COPY pubspec.yaml pubspec.lock ./
RUN flutter pub get
FROM base AS builder
# Pull in the resolved package config from deps so `flutter pub get` is not
# re-run when only source files change.
COPY --from=deps /app/.dart_tool ./.dart_tool
COPY . .
RUN flutter build web --release --output=build/tm_pwa
FROM docker-mirror.ravanertebat.ir/hub/nginx:1.25.2-alpine3.18-slim AS runner
COPY --from=builder /app/build/tm_pwa /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]