React 19 + TypeScript SPA with Vite, mobile responsive fixes, GitHub Actions CI/CD pipeline for automated deployment. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
981 B
YAML
30 lines
981 B
YAML
services:
|
|
web:
|
|
image: nginx:alpine
|
|
container_name: aimpress-website
|
|
restart: unless-stopped
|
|
networks:
|
|
- traefik-public
|
|
volumes:
|
|
- ./dist:/usr/share/nginx/html:ro
|
|
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.aimpress-website.rule=Host(`ai-impress.com`) || Host(`www.ai-impress.com`)"
|
|
- "traefik.http.routers.aimpress-website.entrypoints=websecure"
|
|
- "traefik.http.routers.aimpress-website.tls.certresolver=cloudflare"
|
|
- "traefik.http.services.aimpress-website.loadbalancer.server.port=80"
|
|
- "traefik.http.routers.aimpress-website.middlewares=security-headers@file"
|
|
|
|
email-api:
|
|
build: ./email-api
|
|
container_name: aimpress-email-api
|
|
restart: unless-stopped
|
|
networks:
|
|
- traefik-public
|
|
environment:
|
|
- RESEND_API_KEY=${RESEND_API_KEY}
|
|
|
|
networks:
|
|
traefik-public:
|
|
external: true
|