From 5a1e287ab60ab076b69bf7fc1ac15a16e8f528ba Mon Sep 17 00:00:00 2001 From: Max Mayfield Date: Tue, 3 Mar 2026 00:36:48 +0000 Subject: [PATCH] Add console + marketing site to Docker Compose and build-push - Console: nginx SPA on port 3010, image reg.dd0c.net/dd0c-console - Marketing: nginx static on port 3011, image reg.dd0c.net/dd0c-marketing - Dockerfiles + .dockerignore for both - build-push.sh updated to include console + marketing targets --- products/build-push.sh | 6 ++++-- products/console/.dockerignore | 3 +++ products/docker-compose.yml | 18 ++++++++++++++++++ products/marketing/site/.dockerignore | 3 +++ products/marketing/site/Dockerfile | 11 +++++++++++ 5 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 products/console/.dockerignore create mode 100644 products/marketing/site/.dockerignore create mode 100644 products/marketing/site/Dockerfile diff --git a/products/build-push.sh b/products/build-push.sh index 34091cc..16da451 100755 --- a/products/build-push.sh +++ b/products/build-push.sh @@ -23,6 +23,8 @@ declare -A CONTEXTS=( ["dd0c-portal"]="04-lightweight-idp" ["dd0c-cost"]="05-aws-cost-anomaly" ["dd0c-run"]="06-runbook-automation/saas" + ["dd0c-console"]="console" + ["dd0c-marketing"]="marketing/site" ) # If args provided, filter to those services @@ -34,12 +36,12 @@ if [ $# -gt 0 ]; then TARGETS+=("$key") else echo -e "${RED}Unknown service: $arg${NC}" >&2 - echo "Available: drift alert portal cost run" >&2 + echo "Available: drift alert portal cost run console marketing" >&2 exit 1 fi done else - TARGETS=("dd0c-drift" "dd0c-alert" "dd0c-portal" "dd0c-cost" "dd0c-run") + TARGETS=("dd0c-drift" "dd0c-alert" "dd0c-portal" "dd0c-cost" "dd0c-run" "dd0c-console" "dd0c-marketing") fi # Login to registry diff --git a/products/console/.dockerignore b/products/console/.dockerignore new file mode 100644 index 0000000..deed335 --- /dev/null +++ b/products/console/.dockerignore @@ -0,0 +1,3 @@ +node_modules/ +dist/ +.env diff --git a/products/docker-compose.yml b/products/docker-compose.yml index 5d48c54..aeaadf2 100644 --- a/products/docker-compose.yml +++ b/products/docker-compose.yml @@ -207,6 +207,24 @@ services: postgres: { condition: service_healthy } redis: { condition: service_healthy } + # dd0c Console (React SPA) + console: + image: reg.dd0c.net/dd0c-console:latest + build: + context: ./console + dockerfile: Dockerfile + ports: + - "3010:80" + + # dd0c Marketing Site (Astro) + marketing: + image: reg.dd0c.net/dd0c-marketing:latest + build: + context: ./marketing/site + dockerfile: Dockerfile + ports: + - "3011:80" + volumes: pg_data: meili_data: diff --git a/products/marketing/site/.dockerignore b/products/marketing/site/.dockerignore new file mode 100644 index 0000000..deed335 --- /dev/null +++ b/products/marketing/site/.dockerignore @@ -0,0 +1,3 @@ +node_modules/ +dist/ +.env diff --git a/products/marketing/site/Dockerfile b/products/marketing/site/Dockerfile new file mode 100644 index 0000000..4338d00 --- /dev/null +++ b/products/marketing/site/Dockerfile @@ -0,0 +1,11 @@ +FROM node:22-slim AS build +WORKDIR /app +COPY package.json package-lock.json* ./ +RUN npm ci +COPY . . +RUN npm run build + +FROM nginx:alpine +COPY --from=build /app/dist /usr/share/nginx/html +EXPOSE 80 +CMD ["nginx", "-g", "daemon off;"]