-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
33 lines (24 loc) · 880 Bytes
/
Dockerfile
File metadata and controls
33 lines (24 loc) · 880 Bytes
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
FROM node:22-slim
# System deps for Python pipeline and Claude CLI
RUN apt-get update && \
apt-get install -y --no-install-recommends git python3 python3-pip python3-venv && \
rm -rf /var/lib/apt/lists/*
# Install Claude CLI globally
RUN npm install -g @anthropic-ai/claude-code
WORKDIR /app
# Install Node dependencies
COPY package.json package-lock.json ./
RUN npm ci
# Copy app + pipeline
COPY . .
# Bootstrap Python venv for pipeline scripts
RUN python3 -m venv pipeline/.venv && \
pipeline/.venv/bin/pip install -r pipeline/requirements.txt
# Use --webpack flag to avoid Next 16 turbopack panic
RUN npx next build --webpack
EXPOSE 3000
# Entrypoint rebuilds catalog if transcripts changed, then starts app
COPY deploy/docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["npm", "start"]