42 lines
1.3 KiB
TypeScript
42 lines
1.3 KiB
TypeScript
import type { NextConfig } from "next";
|
|
|
|
// Read at runtime, not baked in. The rewrites below run in the Next server
|
|
// process, never in the browser, so this never needed the NEXT_PUBLIC_ prefix
|
|
// that pins a value into the image at build time. NEXT_PUBLIC_API_URL is still
|
|
// honoured so an existing deployment passing it keeps working.
|
|
const apiUrl = process.env.API_URL ?? process.env.NEXT_PUBLIC_API_URL ?? "http://localhost:8080";
|
|
|
|
const nextConfig: NextConfig = {
|
|
output: "standalone",
|
|
async rewrites() {
|
|
return [
|
|
{
|
|
source: "/api/:path*",
|
|
destination: `${apiUrl}/api/:path*`,
|
|
},
|
|
{
|
|
source: "/auth/:path*",
|
|
destination: `${apiUrl}/auth/:path*`,
|
|
},
|
|
{
|
|
source: "/install",
|
|
destination: `${apiUrl}/install`,
|
|
},
|
|
{
|
|
source: "/install.ps1",
|
|
destination: `${apiUrl}/install.ps1`,
|
|
},
|
|
{
|
|
source: "/update",
|
|
destination: `${apiUrl}/update`,
|
|
},
|
|
{
|
|
source: "/update.ps1",
|
|
destination: `${apiUrl}/update.ps1`,
|
|
},
|
|
];
|
|
},
|
|
};
|
|
|
|
export default nextConfig;
|