testmog / Dockerfile
wuhp's picture
Update Dockerfile
86916e5 verified
raw
history blame contribute delete
832 Bytes
# Use Node.js as base
FROM node:20-slim
# Set working directory
WORKDIR /app
# Copy package files
COPY package*.json ./
# Install dependencies and bore tunnel
RUN apt-get update && apt-get install -y wget curl && \
wget https://github.com/ekzhang/bore/releases/download/v0.5.1/bore-v0.5.1-x86_64-unknown-linux-musl.tar.gz && \
tar -xf bore-v0.5.1-x86_64-unknown-linux-musl.tar.gz && \
mv bore /usr/local/bin/ && \
rm bore-v0.5.1-x86_64-unknown-linux-musl.tar.gz && \
npm install
# Copy source code
COPY . .
# Build the frontend
RUN npm run build
# Install tsx globally or ensure it is in devDependencies to run the server
RUN npm install -g tsx
# Expose the default HF Spaces port
EXPOSE 7860
# Set environment variables
ENV NODE_ENV=production
ENV PORT=7860
# Start the server
CMD ["tsx", "server.ts"]