rachana-data-studio / Dockerfile
KPrashanth's picture
Deploy Rachana Data Studio
14954f2 verified
Raw
History Blame Contribute Delete
1.4 kB
FROM node:22-slim AS frontend-deps
WORKDIR /app/frontend
COPY frontend/package.json frontend/package-lock.json ./
RUN npm ci
FROM node:22-slim AS frontend-build
WORKDIR /app/frontend
COPY --from=frontend-deps /app/frontend/node_modules ./node_modules
COPY frontend ./
RUN npm run build
FROM node:22-slim AS runtime
RUN apt-get update \
&& apt-get install -y --no-install-recommends nginx python3 python3-venv \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /home/node/app
COPY requirements-studio.txt ./requirements-studio.txt
RUN python3 -m venv /opt/venv \
&& /opt/venv/bin/pip install --no-cache-dir -r requirements-studio.txt
COPY --chown=node:node data_studio ./data_studio
COPY --chown=node:node tokenizer ./tokenizer
COPY --chown=node:node deploy/nginx.conf /etc/nginx/nginx.conf
COPY --chown=node:node deploy/start.sh ./start.sh
COPY --from=frontend-build --chown=node:node /app/frontend/.next/standalone ./frontend
COPY --from=frontend-build --chown=node:node /app/frontend/.next/static ./frontend/.next/static
RUN chmod +x ./start.sh \
&& mkdir -p /var/lib/nginx /var/log/nginx /run \
&& chown -R node:node /var/lib/nginx /var/log/nginx /run /etc/nginx
USER node
ENV HOME=/home/node
ENV PYTHONUNBUFFERED=1
ENV PATH=/opt/venv/bin:$PATH
ENV HOSTNAME=0.0.0.0
ENV PORT=3000
ENV STUDIO_ENV=production
ENV ALLOW_LEGACY_IMPORT_EXPORT=false
EXPOSE 7860
CMD ["./start.sh"]