feat: throw explicit error when SITE_DOMAIN is unset
- Throw fatal configuration error in src/_data/site.js if SITE_DOMAIN is missing - Require SITE_DOMAIN in docker-compose.yml without default fallback - Require SITE_DOMAIN ARG in Dockerfile with no default fallback
This commit is contained in:
+4
-4
@@ -3,11 +3,11 @@ FROM node:22-alpine AS builder
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Dynamic build arguments for domain & full URL
|
# Dynamic build arguments for domain & full URL (required, no fallback)
|
||||||
ARG SITE_URL=https://riverrooks.dev
|
ARG SITE_DOMAIN
|
||||||
ARG SITE_DOMAIN=riverrooks.dev
|
ARG SITE_URL
|
||||||
ENV SITE_URL=$SITE_URL
|
|
||||||
ENV SITE_DOMAIN=$SITE_DOMAIN
|
ENV SITE_DOMAIN=$SITE_DOMAIN
|
||||||
|
ENV SITE_URL=$SITE_URL
|
||||||
|
|
||||||
# Copy dependency definitions and install
|
# Copy dependency definitions and install
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
|
|||||||
+4
-4
@@ -6,14 +6,14 @@ services:
|
|||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
args:
|
args:
|
||||||
SITE_URL: ${SITE_URL:-https://riverrooks.dev}
|
SITE_DOMAIN: ${SITE_DOMAIN:?Error: SITE_DOMAIN is not set. Please define SITE_DOMAIN in .env}
|
||||||
SITE_DOMAIN: ${SITE_DOMAIN:-riverrooks.dev}
|
SITE_URL: ${SITE_URL:-https://${SITE_DOMAIN}}
|
||||||
image: river-rooks-blog:latest
|
image: river-rooks-blog:latest
|
||||||
container_name: river_rooks_web
|
container_name: river_rooks_web
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- SITE_URL=${SITE_URL:-https://riverrooks.dev}
|
- SITE_DOMAIN=${SITE_DOMAIN:?Error: SITE_DOMAIN is not set. Please define SITE_DOMAIN in .env}
|
||||||
- SITE_DOMAIN=${SITE_DOMAIN:-riverrooks.dev}
|
- SITE_URL=${SITE_URL:-https://${SITE_DOMAIN}}
|
||||||
ports:
|
ports:
|
||||||
- "8080:80"
|
- "8080:80"
|
||||||
healthcheck:
|
healthcheck:
|
||||||
|
|||||||
+11
-1
@@ -21,7 +21,17 @@ try {
|
|||||||
// Silent fallback
|
// Silent fallback
|
||||||
}
|
}
|
||||||
|
|
||||||
const siteDomain = process.env.SITE_DOMAIN || "riverrooks.dev";
|
const siteDomain = process.env.SITE_DOMAIN;
|
||||||
|
if (!siteDomain) {
|
||||||
|
throw new Error(
|
||||||
|
"\n=======================================================================\n" +
|
||||||
|
"FATAL CONFIGURATION ERROR: SITE_DOMAIN environment variable is not set.\n" +
|
||||||
|
"The site domain must be explicitly defined in your .env file or environment.\n" +
|
||||||
|
"Example in .env:\n" +
|
||||||
|
" SITE_DOMAIN=riverrooks.dev\n" +
|
||||||
|
"=======================================================================\n"
|
||||||
|
);
|
||||||
|
}
|
||||||
const siteUrl = process.env.SITE_URL || `https://${siteDomain}`;
|
const siteUrl = process.env.SITE_URL || `https://${siteDomain}`;
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|||||||
Reference in New Issue
Block a user