multimodalart HF Staff commited on
Commit
88637f2
·
verified ·
1 Parent(s): fed2582

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +42 -0
Dockerfile ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM node:20-bullseye AS deps
2
+ WORKDIR /app
3
+ COPY ui/package*.json ./ui/
4
+ RUN cd ui && npm install --ignore-scripts
5
+
6
+ FROM node:20-bullseye AS build
7
+ WORKDIR /app
8
+ COPY . .
9
+ COPY --from=deps /app/ui/node_modules ./ui/node_modules
10
+ WORKDIR /app/ui
11
+ ENV NODE_ENV=production \
12
+ NEXT_PUBLIC_DB_MODE=browser
13
+ RUN npm run build
14
+
15
+ FROM node:20-bullseye-slim AS runner
16
+ WORKDIR /app/ui
17
+
18
+ ENV NODE_ENV=production \
19
+ NEXT_PUBLIC_DB_MODE=browser \
20
+ NEXT_TELEMETRY_DISABLED=1 \
21
+ PORT=7860 \
22
+ DATASETS_FOLDER=datasets \
23
+ TRAINING_FOLDER=output \
24
+ HF_JOBS_DEFAULT_HARDWARE=a100-large \
25
+ HF_OAUTH_CLIENT_ID=bfa7db67-cf78-4a4b-8232-69d855ea836b \
26
+ NEXT_PUBLIC_HF_OAUTH_CLIENT_ID=bfa7db67-cf78-4a4b-8232-69d855ea836b
27
+
28
+ RUN apt-get update && apt-get install -y --no-install-recommends \
29
+ python3 python3-pip git curl ca-certificates bash tini \
30
+ && pip3 install --no-cache-dir "huggingface_hub" \
31
+ && curl -LsSf https://astral.sh/uv/install.sh | bash \
32
+ && ln -s /root/.local/bin/uv /usr/local/bin/uv \
33
+ && apt-get clean && rm -rf /var/lib/apt/lists/*
34
+
35
+ RUN mkdir -p /data/datasets /data/output
36
+
37
+ COPY --from=build /app /app
38
+ COPY --from=deps /app/ui/node_modules ./node_modules
39
+
40
+ EXPOSE 7860
41
+ ENTRYPOINT ["tini", "--"]
42
+ CMD ["npm", "run", "start", "--", "--hostname", "0.0.0.0", "--port", "7860"]