Spaces:
Sleeping
Sleeping
Commit ·
d60c39c
1
Parent(s): c21bd0f
Fix Space 404 by packaging and serving frontend dist
Browse files- Dockerfile +1 -0
- backend/cmd/server/main.go +6 -1
Dockerfile
CHANGED
|
@@ -17,5 +17,6 @@ FROM alpine:3.22
|
|
| 17 |
WORKDIR /app
|
| 18 |
ENV PORT=7860
|
| 19 |
COPY --from=backend-builder /out/fastfileviewer /app/fastfileviewer
|
|
|
|
| 20 |
EXPOSE 7860
|
| 21 |
CMD ["/app/fastfileviewer"]
|
|
|
|
| 17 |
WORKDIR /app
|
| 18 |
ENV PORT=7860
|
| 19 |
COPY --from=backend-builder /out/fastfileviewer /app/fastfileviewer
|
| 20 |
+
COPY --from=backend-builder /app/backend/web/dist /app/web/dist
|
| 21 |
EXPOSE 7860
|
| 22 |
CMD ["/app/fastfileviewer"]
|
backend/cmd/server/main.go
CHANGED
|
@@ -61,12 +61,17 @@ func main() {
|
|
| 61 |
api.GET("/tasks/:id/stream", taskHandler.Stream)
|
| 62 |
}
|
| 63 |
|
| 64 |
-
frontendDist := filepath.Join("web", "dist")
|
|
|
|
|
|
|
|
|
|
| 65 |
if _, err := os.Stat(frontendDist); err == nil {
|
| 66 |
router.Static("/assets", filepath.Join(frontendDist, "assets"))
|
| 67 |
router.NoRoute(func(ctx *gin.Context) {
|
| 68 |
ctx.File(filepath.Join(frontendDist, "index.html"))
|
| 69 |
})
|
|
|
|
|
|
|
| 70 |
}
|
| 71 |
|
| 72 |
log.Printf("server listening on :%s", cfg.Port)
|
|
|
|
| 61 |
api.GET("/tasks/:id/stream", taskHandler.Stream)
|
| 62 |
}
|
| 63 |
|
| 64 |
+
frontendDist := filepath.Join("/app", "web", "dist")
|
| 65 |
+
if _, err := os.Stat(frontendDist); err != nil {
|
| 66 |
+
frontendDist = filepath.Join("web", "dist")
|
| 67 |
+
}
|
| 68 |
if _, err := os.Stat(frontendDist); err == nil {
|
| 69 |
router.Static("/assets", filepath.Join(frontendDist, "assets"))
|
| 70 |
router.NoRoute(func(ctx *gin.Context) {
|
| 71 |
ctx.File(filepath.Join(frontendDist, "index.html"))
|
| 72 |
})
|
| 73 |
+
} else {
|
| 74 |
+
log.Printf("frontend dist not found, only API routes are available")
|
| 75 |
}
|
| 76 |
|
| 77 |
log.Printf("server listening on :%s", cfg.Port)
|