chore: improve production deployment flexibility
- Switch frontend from nginx to caddy for consistency with Coolify - Make VITE_API_URL optional, auto-derive from window.location.origin/api - Simplifies deployment by not requiring build-time API URL Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -15,20 +15,18 @@ ENV VITE_API_URL=${VITE_API_URL}
|
||||
RUN npm run build
|
||||
|
||||
# Production stage
|
||||
FROM nginx:alpine
|
||||
FROM caddy:alpine
|
||||
|
||||
COPY --from=builder /app/dist /usr/share/nginx/html
|
||||
# Copy built assets
|
||||
COPY --from=builder /app/dist /srv
|
||||
|
||||
# Handle client-side routing
|
||||
RUN echo 'server { \
|
||||
listen 8080; \
|
||||
root /usr/share/nginx/html; \
|
||||
index index.html; \
|
||||
location / { \
|
||||
try_files $uri $uri/ /index.html; \
|
||||
} \
|
||||
}' > /etc/nginx/conf.d/default.conf
|
||||
# Caddyfile for SPA routing
|
||||
RUN echo ':8080 { \
|
||||
root * /srv \
|
||||
file_server \
|
||||
try_files {path} /index.html \
|
||||
}' > /etc/caddy/Caddyfile
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
CMD ["caddy", "run", "--config", "/etc/caddy/Caddyfile"]
|
||||
|
||||
Reference in New Issue
Block a user