From 382890cb5671857f8d7cc30d114000fa88a582b0 Mon Sep 17 00:00:00 2001 From: CarterPerez-dev Date: Sun, 10 May 2026 05:15:09 -0400 Subject: [PATCH] chore(canary): rebrand from no-auth-template to canary-token-generator MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - compose.yml: APP_NAME default → canary-token-generator - dev.compose.yml: APP_NAME default → canary-token-generator ./react-scss bind paths → ./frontend (template flatten) - cloudflared.compose.yml: APP_NAME default → canary-token-generator - VITE_APP_TITLE default in both compose files → "Canary Token Generator" Frontend package.json and index.html were already rebranded by operator between sessions. All three compose stacks now validate via docker compose config (prod, dev, prod+tunnel overlay). --- .../cloudflared.compose.yml | 27 ++++++++++ .../canary-token-generator/compose.yml | 36 ++++++++++++++ .../canary-token-generator/dev.compose.yml | 49 +++++++++++++++++++ 3 files changed, 112 insertions(+) create mode 100644 PROJECTS/beginner/canary-token-generator/cloudflared.compose.yml create mode 100644 PROJECTS/beginner/canary-token-generator/compose.yml create mode 100644 PROJECTS/beginner/canary-token-generator/dev.compose.yml diff --git a/PROJECTS/beginner/canary-token-generator/cloudflared.compose.yml b/PROJECTS/beginner/canary-token-generator/cloudflared.compose.yml new file mode 100644 index 00000000..58df3753 --- /dev/null +++ b/PROJECTS/beginner/canary-token-generator/cloudflared.compose.yml @@ -0,0 +1,27 @@ +# ============================================================================= +# AngelaMos | 2026 +# cloudflared.compose.yml +# ============================================================================= +# Cloudflare Tunnel for production remote access +# Usage: docker compose -f compose.yml -f cloudflared.compose.yml up -d +# ============================================================================= + +services: + cloudflared: + image: cloudflare/cloudflared:latest + container_name: ${APP_NAME:-canary-token-generator}-tunnel + command: tunnel run --token ${CLOUDFLARE_TUNNEL_TOKEN} + networks: + - app + depends_on: + nginx: + condition: service_started + deploy: + resources: + limits: + cpus: '0.5' + memory: 128M + reservations: + cpus: '0.1' + memory: 32M + restart: unless-stopped diff --git a/PROJECTS/beginner/canary-token-generator/compose.yml b/PROJECTS/beginner/canary-token-generator/compose.yml new file mode 100644 index 00000000..09ea14d8 --- /dev/null +++ b/PROJECTS/beginner/canary-token-generator/compose.yml @@ -0,0 +1,36 @@ +# ============================================================================= +# AngelaMos | 2026 +# compose.yml +# ============================================================================= +# Production compose - Nginx serving built React app +# For Cloudflare tunnel: docker compose -f compose.yml -f cloudflared.compose.yml up +# ============================================================================= + +name: ${APP_NAME:-canary-token-generator} + +services: + nginx: + build: + context: . + dockerfile: infra/docker/vite.prod + args: + - VITE_API_URL=${VITE_API_URL:-/api} + - VITE_APP_TITLE=${VITE_APP_TITLE:-Canary Token Generator} + container_name: ${APP_NAME:-canary-token-generator}-nginx + ports: + - "${NGINX_HOST_PORT:-22784}:80" + networks: + - app + deploy: + resources: + limits: + cpus: '1.0' + memory: 256M + reservations: + cpus: '0.25' + memory: 64M + restart: unless-stopped + +networks: + app: + driver: bridge diff --git a/PROJECTS/beginner/canary-token-generator/dev.compose.yml b/PROJECTS/beginner/canary-token-generator/dev.compose.yml new file mode 100644 index 00000000..6238f4bc --- /dev/null +++ b/PROJECTS/beginner/canary-token-generator/dev.compose.yml @@ -0,0 +1,49 @@ +# ============================================================================= +# AngelaMos | 2026 +# dev.compose.yml +# ============================================================================= +# Development compose - Nginx + Vite dev server with HMR +# Uses .env.development +# ============================================================================= + +name: ${APP_NAME:-canary-token-generator}-dev + +services: + nginx: + image: nginx:1.27-alpine + container_name: ${APP_NAME:-canary-token-generator}-nginx-dev + ports: + - "${NGINX_HOST_PORT:-58495}:80" + volumes: + - ./infra/nginx/nginx.conf:/etc/nginx/nginx.conf:ro + - ./infra/nginx/dev.nginx:/etc/nginx/conf.d/default.conf:ro + depends_on: + frontend: + condition: service_started + networks: + - app + restart: unless-stopped + + frontend: + build: + context: ./frontend + dockerfile: ../infra/docker/vite.dev + container_name: ${APP_NAME:-canary-token-generator}-frontend-dev + ports: + - "${FRONTEND_HOST_PORT:-15723}:5173" + volumes: + - ./frontend:/app + - frontend_modules:/app/node_modules + environment: + - VITE_API_URL=${VITE_API_URL:-/api} + - VITE_APP_TITLE=${VITE_APP_TITLE:-Canary Token Generator} + networks: + - app + restart: unless-stopped + +networks: + app: + driver: bridge + +volumes: + frontend_modules: