bolt.diy / Dockerfile
aproli90's picture
Enable only dev stage
f48d08f verified
ARG BASE=node:20.18.0
FROM ${BASE} AS base
# Ensure root user
USER root
WORKDIR /app
# Install dependencies (this step is cached as long as the dependencies don't change)
COPY package.json pnpm-lock.yaml ./
RUN corepack enable pnpm && pnpm install
# Copy the rest of your app's source code
COPY . .
# Expose the port the app runs on
EXPOSE 5173
# # Production image
# FROM base AS bolt-ai-production
# # Ensure root user
# USER root
# # Define environment variables with default values or let them be overridden
# ARG GROQ_API_KEY
# ARG HuggingFace_API_KEY
# ARG OPENAI_API_KEY
# ARG ANTHROPIC_API_KEY
# ARG OPEN_ROUTER_API_KEY
# ARG GOOGLE_GENERATIVE_AI_API_KEY
# ARG OLLAMA_API_BASE_URL
# ARG XAI_API_KEY
# ARG TOGETHER_API_KEY
# ARG TOGETHER_API_BASE_URL
# ARG VITE_LOG_LEVEL=debug
# ARG DEFAULT_NUM_CTX
# ENV WRANGLER_SEND_METRICS=false \
# GROQ_API_KEY=${GROQ_API_KEY} \
# HuggingFace_KEY=${HuggingFace_API_KEY} \
# OPENAI_API_KEY=${OPENAI_API_KEY} \
# ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} \
# OPEN_ROUTER_API_KEY=${OPEN_ROUTER_API_KEY} \
# GOOGLE_GENERATIVE_AI_API_KEY=${GOOGLE_GENERATIVE_AI_API_KEY} \
# OLLAMA_API_BASE_URL=${OLLAMA_API_BASE_URL} \
# XAI_API_KEY=${XAI_API_KEY} \
# TOGETHER_API_KEY=${TOGETHER_API_KEY} \
# TOGETHER_API_BASE_URL=${TOGETHER_API_BASE_URL} \
# VITE_LOG_LEVEL=${VITE_LOG_LEVEL} \
# DEFAULT_NUM_CTX=${DEFAULT_NUM_CTX}
# # Pre-configure wrangler to disable metrics
# RUN mkdir -p /root/.config/.wrangler && \
# echo '{"enabled":false}' > /root/.config/.wrangler/metrics.json
# RUN npm run build
# RUN chmod -R 777 /app
# CMD [ "pnpm", "run", "dockerstart"]
# Development image
FROM base AS bolt-ai-development
# Ensure root user
USER root
# Define the same environment variables for development
ARG GROQ_API_KEY
ARG HuggingFace
ARG OPENAI_API_KEY
ARG ANTHROPIC_API_KEY
ARG OPEN_ROUTER_API_KEY
ARG GOOGLE_GENERATIVE_AI_API_KEY
ARG OLLAMA_API_BASE_URL
ARG XAI_API_KEY
ARG TOGETHER_API_KEY
ARG TOGETHER_API_BASE_URL
ARG VITE_LOG_LEVEL=debug
ARG DEFAULT_NUM_CTX
ENV GROQ_API_KEY=${GROQ_API_KEY} \
HuggingFace_API_KEY=${HuggingFace_API_KEY} \
OPENAI_API_KEY=${OPENAI_API_KEY} \
ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} \
OPEN_ROUTER_API_KEY=${OPEN_ROUTER_API_KEY} \
GOOGLE_GENERATIVE_AI_API_KEY=${GOOGLE_GENERATIVE_AI_API_KEY} \
OLLAMA_API_BASE_URL=${OLLAMA_API_BASE_URL} \
XAI_API_KEY=${XAI_API_KEY} \
TOGETHER_API_KEY=${TOGETHER_API_KEY} \
TOGETHER_API_BASE_URL=${TOGETHER_API_BASE_URL} \
VITE_LOG_LEVEL=${VITE_LOG_LEVEL} \
DEFAULT_NUM_CTX=${DEFAULT_NUM_CTX}
RUN mkdir -p ${WORKDIR}/run
RUN chmod -R 777 /app
CMD pnpm run dev --host