Files
openccb/web/studio/Dockerfile
T
Nurfog b1eb23926e feat: database-first refactor, unified architecture and visual developer manual
Summary of changes:
- Consolidated Studio+CMS and Experience+LMS into unified services.
- Moved core business logic (enrollment, grading, auth) to PostgreSQL functions.
- Implemented advanced auditing via DB triggers and session context.
- Added gamification (XP/Levels/Leaderboards) and logic encapsulation.
- Updated installation/diagnostic scripts for the new architecture.
- Created a comprehensive Visual Developer Manual in README.md with hardware scaling.
2026-01-11 02:34:23 -03:00

38 lines
967 B
Docker

# Build stage for Rust CMS
FROM rustlang/rust:nightly AS rust-builder
WORKDIR /usr/src/app
COPY . .
RUN apt-get update && apt-get install -y pkg-config libssl-dev && rm -rf /var/lib/apt/lists/*
RUN cargo build --release -p cms-service
# Build stage for Next.js Studio
FROM node:18-alpine AS node-builder
WORKDIR /app
COPY web/studio/package*.json ./
RUN npm install
COPY web/studio/ .
RUN npm run build
# Final stage
FROM node:18-alpine AS runner
WORKDIR /app
ENV NODE_ENV production
# Install system dependencies for Rust binary
RUN apk add --no-cache openssl libgcc libstdc++
# Copy CMS binary
COPY --from=rust-builder /usr/src/app/target/release/cms-service ./
# Copy Studio frontend
COPY --from=node-builder /app/public ./public
COPY --from=node-builder /app/.next/standalone ./
COPY --from=node-builder /app/.next/static ./.next/static
# Copy entrypoint
COPY web/studio/entrypoint.sh ./
RUN chmod +x entrypoint.sh
EXPOSE 3000 3001
CMD ["./entrypoint.sh"]