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
|
||||
|
||||
# Dynamic build arguments for domain & full URL
|
||||
ARG SITE_URL=https://riverrooks.dev
|
||||
ARG SITE_DOMAIN=riverrooks.dev
|
||||
ENV SITE_URL=$SITE_URL
|
||||
# Dynamic build arguments for domain & full URL (required, no fallback)
|
||||
ARG SITE_DOMAIN
|
||||
ARG SITE_URL
|
||||
ENV SITE_DOMAIN=$SITE_DOMAIN
|
||||
ENV SITE_URL=$SITE_URL
|
||||
|
||||
# Copy dependency definitions and install
|
||||
COPY package*.json ./
|
||||
|
||||
+4
-4
@@ -6,14 +6,14 @@ services:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
args:
|
||||
SITE_URL: ${SITE_URL:-https://riverrooks.dev}
|
||||
SITE_DOMAIN: ${SITE_DOMAIN:-riverrooks.dev}
|
||||
SITE_DOMAIN: ${SITE_DOMAIN:?Error: SITE_DOMAIN is not set. Please define SITE_DOMAIN in .env}
|
||||
SITE_URL: ${SITE_URL:-https://${SITE_DOMAIN}}
|
||||
image: river-rooks-blog:latest
|
||||
container_name: river_rooks_web
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- SITE_URL=${SITE_URL:-https://riverrooks.dev}
|
||||
- SITE_DOMAIN=${SITE_DOMAIN:-riverrooks.dev}
|
||||
- SITE_DOMAIN=${SITE_DOMAIN:?Error: SITE_DOMAIN is not set. Please define SITE_DOMAIN in .env}
|
||||
- SITE_URL=${SITE_URL:-https://${SITE_DOMAIN}}
|
||||
ports:
|
||||
- "8080:80"
|
||||
healthcheck:
|
||||
|
||||
+11
-1
@@ -21,7 +21,17 @@ try {
|
||||
// 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}`;
|
||||
|
||||
export default {
|
||||
|
||||
Reference in New Issue
Block a user