Passenger web apps deployment issues resolution 1

This commit is contained in:
Stephanos A
2026-06-03 07:38:27 +03:00
parent f29e8d95fd
commit e91005ac90
3 changed files with 38 additions and 1 deletions

View File

@@ -1,10 +1,14 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
output: 'export',
reactStrictMode: true,
transpilePackages: ['@edr/types', '@edr/ui-common'],
env: {
NEXT_PUBLIC_API_URL: process.env.NEXT_PUBLIC_API_URL || 'http://localhost:4000',
},
images: {
unoptimized: true, // Required for static export
},
};
module.exports = nextConfig;

View File

@@ -1,7 +1,11 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
output: 'export',
reactStrictMode: true,
transpilePackages: ['@edr/types', '@edr/ui-common'],
images: {
unoptimized: true, // Required for static export
},
};
export default nextConfig;

View File

@@ -32,7 +32,36 @@ RUN pnpm turbo build --filter="${TURBO_FILTER}..."
FROM nginx:alpine AS runner
ARG APP_PATH
# Copy nginx configuration
COPY infrastructure/nginx/spa.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /app/${APP_PATH}/dist /usr/share/nginx/html
# Remove default nginx files
RUN rm -rf /usr/share/nginx/html/*
# Copy build output - check for Next.js 'out' or Vite 'dist' directory
# Use shell to handle conditional copy
RUN --mount=type=bind,from=builder,source=/app,target=/build \
if [ -d "/build/${APP_PATH}/out" ]; then \
cp -r /build/${APP_PATH}/out/* /usr/share/nginx/html/; \
echo "Copied from Next.js 'out' directory"; \
elif [ -d "/build/${APP_PATH}/dist" ]; then \
cp -r /build/${APP_PATH}/dist/* /usr/share/nginx/html/; \
echo "Copied from Vite 'dist' directory"; \
else \
echo "Error: No build output found in 'out' or 'dist' directory"; \
exit 1; \
fi
# Copy public directory if it exists (for static assets)
RUN --mount=type=bind,from=builder,source=/app,target=/build \
if [ -d "/build/${APP_PATH}/public" ]; then \
mkdir -p /usr/share/nginx/html/public && \
cp -r /build/${APP_PATH}/public/* /usr/share/nginx/html/public/ && \
echo "Copied public directory"; \
else \
echo "No public directory found, skipping"; \
fi
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]