diff --git a/apps/web/Dockerfile b/apps/web/Dockerfile index 380496bab5..d9b09f2b48 100644 --- a/apps/web/Dockerfile +++ b/apps/web/Dockerfile @@ -17,6 +17,14 @@ WORKDIR /app ARG FREESOUND_CLIENT_ID ARG FREESOUND_API_KEY +# NEXT_PUBLIC_* are inlined at build time — pass VPS URLs as build args. +ARG NEXT_PUBLIC_SITE_URL=http://localhost:3000 +ARG NEXT_PUBLIC_MARBLE_API_URL=https://api.marblecms.com +ARG NEXT_PUBLIC_AI_BACKEND_URL=http://localhost:8420 +ARG NEXT_PUBLIC_OLLAMA_URL=http://localhost:11434 +ARG NEXT_PUBLIC_WHISPER_SERVICE_URL=http://localhost:8421 +ARG NEXT_PUBLIC_TTS_SERVICE_URL=http://localhost:8422 +ARG NEXT_PUBLIC_IMAGE_SERVICE_URL=http://localhost:8423 COPY package.json package.json COPY bun.lock bun.lock @@ -43,9 +51,13 @@ ENV DATABASE_URL="postgresql://opencut:opencut@localhost:5432/opencut" ENV BETTER_AUTH_SECRET="build-time-secret" ENV UPSTASH_REDIS_REST_URL="http://localhost:8079" ENV UPSTASH_REDIS_REST_TOKEN="example_token" -ENV NEXT_PUBLIC_SITE_URL="http://localhost:3000" -ENV NEXT_PUBLIC_MARBLE_API_URL="https://api.marblecms.com" -ENV NEXT_PUBLIC_AI_BACKEND_URL="http://localhost:8420" +ENV NEXT_PUBLIC_SITE_URL=$NEXT_PUBLIC_SITE_URL +ENV NEXT_PUBLIC_MARBLE_API_URL=$NEXT_PUBLIC_MARBLE_API_URL +ENV NEXT_PUBLIC_AI_BACKEND_URL=$NEXT_PUBLIC_AI_BACKEND_URL +ENV NEXT_PUBLIC_OLLAMA_URL=$NEXT_PUBLIC_OLLAMA_URL +ENV NEXT_PUBLIC_WHISPER_SERVICE_URL=$NEXT_PUBLIC_WHISPER_SERVICE_URL +ENV NEXT_PUBLIC_TTS_SERVICE_URL=$NEXT_PUBLIC_TTS_SERVICE_URL +ENV NEXT_PUBLIC_IMAGE_SERVICE_URL=$NEXT_PUBLIC_IMAGE_SERVICE_URL ENV FREESOUND_CLIENT_ID=$FREESOUND_CLIENT_ID ENV FREESOUND_API_KEY=$FREESOUND_API_KEY diff --git a/apps/web/src/app/layout.tsx b/apps/web/src/app/layout.tsx index 981cb201c2..a0c8c3bf28 100644 --- a/apps/web/src/app/layout.tsx +++ b/apps/web/src/app/layout.tsx @@ -48,18 +48,20 @@ export default function RootLayout({ > -