Spaces:
Sleeping
Sleeping
| FROM oven/bun:1 as build | |
| # Set working directory | |
| WORKDIR /app | |
| # Copy the viewer directory with all its contents | |
| COPY viewer/ . | |
| # Install dependencies | |
| RUN bun install --frozen-lockfile | |
| # Build the application with more verbose output | |
| RUN bun run build || (echo "Build failed. Check the error messages above." && exit 1) | |
| # Production stage | |
| FROM nginx:alpine | |
| # Copy built assets from build stage | |
| COPY --from=build /app/dist /usr/share/nginx/html | |
| # Configure nginx to use port 7860 and support SPA routing | |
| RUN echo 'server { \ | |
| listen 7860; \ | |
| root /usr/share/nginx/html; \ | |
| index index.html; \ | |
| location / { \ | |
| try_files $uri $uri/ /index.html; \ | |
| } \ | |
| }' > /etc/nginx/conf.d/default.conf | |
| # Expose port | |
| EXPOSE 7860 | |
| # Start nginx | |
| CMD ["nginx", "-g", "daemon off;"] | |