Some checks failed
Monorepo Pipeline / 🧪 Quality Assurance (push) Failing after 11s
Monorepo Pipeline / 🚀 Release (push) Has been skipped
Monorepo Pipeline / 🐳 Build Directus (Base) (push) Has been skipped
Monorepo Pipeline / 🐳 Build Gatekeeper (Product) (push) Has been skipped
Monorepo Pipeline / 🐳 Build Build-Base (push) Has been skipped
Monorepo Pipeline / 🐳 Build Production Runtime (push) Has been skipped
43 lines
1.0 KiB
Docker
43 lines
1.0 KiB
Docker
# Build Stage
|
|
FROM node:20-slim AS builder
|
|
|
|
WORKDIR /app
|
|
|
|
# Core environment for pnpm
|
|
RUN corepack enable && corepack prepare pnpm@latest --activate
|
|
|
|
# Copy root configurations
|
|
COPY pnpm-lock.yaml pnpm-workspace.yaml package.json ./
|
|
|
|
# Copy all packages for extensions build
|
|
COPY packages ./packages
|
|
|
|
# Install dependencies (only what's needed for extensions)
|
|
RUN pnpm install --no-frozen-lockfile \
|
|
--filter "@mintel/directus-extension-*" \
|
|
--filter "acquisition" \
|
|
--filter "acquisition-manager" \
|
|
--filter "customer-manager" \
|
|
--filter "feedback-commander" \
|
|
--filter "people-manager" \
|
|
--filter "./packages/acquisition" \
|
|
--filter "./packages/mail"
|
|
|
|
|
|
# Runtime Stage
|
|
FROM directus/directus:11
|
|
|
|
WORKDIR /directus
|
|
|
|
# Copy built extensions
|
|
COPY --from=builder /app/packages/cms-infra/extensions ./extensions
|
|
|
|
# Environment defaults (can be overridden)
|
|
ENV KEY="infra-cms-key"
|
|
ENV SECRET="infra-cms-secret"
|
|
ENV DB_CLIENT="sqlite3"
|
|
ENV DB_FILENAME="/directus/database/data.db"
|
|
|
|
# Expose port
|
|
EXPOSE 8055
|