File size: 988 Bytes
6f91ce5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
# Pinned demo on Hugging Face Spaces (sdk: docker). The build context is the folder
# deploy/hf-space/build.sh assembles: a copy of client/ plus pitch.mp4.
FROM node:22-slim

# HF runs the container as uid 1000; in node images that's the existing `node` user.
RUN corepack enable
USER node
WORKDIR /home/node/app

COPY --chown=node package.json pnpm-lock.yaml pnpm-workspace.yaml ./
RUN pnpm install --frozen-lockfile

COPY --chown=node . .

# The tldraw license key arrives as a Space variable (HF passes variables as build args).
ARG VITE_TLDRAW_LICENSE_KEY
RUN if [ -z "$VITE_TLDRAW_LICENSE_KEY" ]; then \
		echo "VITE_TLDRAW_LICENSE_KEY is empty: set it as a variable on the Space"; exit 1; \
	fi
RUN VITE_TLDRAW_LICENSE_KEY="$VITE_TLDRAW_LICENSE_KEY" pnpm build

# demo mode: every visitor gets a freshly seeded board, the agent is off, the video streams
ENV PORT=7860 DATA_DIR=/tmp/pinned DEMO_MODE=1 DEMO_VIDEO=/home/node/app/pitch.mp4
EXPOSE 7860
CMD ["node", "server/server.ts"]