Fix: Pass FASTAPI_URL as build arg for Next.js rewrites
Next.js rewrites are evaluated at build time, not runtime. Without FASTAPI_URL set during build, the rewrite destination defaults to localhost:8000 which fails in Docker. - Add FASTAPI_URL build arg to nextjs-app/Dockerfile - Pass build arg in docker-compose.yml - Pass build arg in Gitea Actions workflow Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -89,6 +89,8 @@ jobs:
|
|||||||
push: ${{ gitea.event_name != 'pull_request' }}
|
push: ${{ gitea.event_name != 'pull_request' }}
|
||||||
tags: ${{ steps.meta-frontend.outputs.tags }}
|
tags: ${{ steps.meta-frontend.outputs.tags }}
|
||||||
labels: ${{ steps.meta-frontend.outputs.labels }}
|
labels: ${{ steps.meta-frontend.outputs.labels }}
|
||||||
|
build-args: |
|
||||||
|
FASTAPI_URL=http://backend:80/api
|
||||||
# Cache disabled due to registry size limits
|
# Cache disabled due to registry size limits
|
||||||
# cache-from: type=registry,ref=${{ env.REGISTRY }}/${{ env.FRONTEND_IMAGE_NAME }}:buildcache
|
# cache-from: type=registry,ref=${{ env.REGISTRY }}/${{ env.FRONTEND_IMAGE_NAME }}:buildcache
|
||||||
# cache-to: type=registry,ref=${{ env.REGISTRY }}/${{ env.FRONTEND_IMAGE_NAME }}:buildcache,mode=max
|
# cache-to: type=registry,ref=${{ env.REGISTRY }}/${{ env.FRONTEND_IMAGE_NAME }}:buildcache,mode=max
|
||||||
|
|||||||
@@ -54,6 +54,8 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ./nextjs-app
|
context: ./nextjs-app
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
|
args:
|
||||||
|
FASTAPI_URL: http://backend:80/api
|
||||||
container_name: schoolcompare_nextjs
|
container_name: schoolcompare_nextjs
|
||||||
ports:
|
ports:
|
||||||
- "3000:3000"
|
- "3000:3000"
|
||||||
|
|||||||
@@ -22,6 +22,10 @@ COPY . .
|
|||||||
ENV NEXT_TELEMETRY_DISABLED=1
|
ENV NEXT_TELEMETRY_DISABLED=1
|
||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
|
|
||||||
|
# Build argument for FastAPI URL (used by Next.js rewrites at build time)
|
||||||
|
ARG FASTAPI_URL=http://backend:80/api
|
||||||
|
ENV FASTAPI_URL=${FASTAPI_URL}
|
||||||
|
|
||||||
# Build application
|
# Build application
|
||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user