Initial app scaffold wired end-to-end: Payload 3.82 CMS integrated with Next 16.2 App Router (standalone output), PostgreSQL 17 adapter, Lexical rich text, Tailwind 3 with Material 3 token palette ported from the stitch technical- editorial design, self-hosted Space Grotesk + Inter via next/font, and lucide-react icons. Admin lives at /admin, REST/GraphQL at /api/*, and /api/health returns build SHA/REV for deploy verification. Seven collections (Users, Media, Categories, Projects, Posts, Gear, ContactSubmissions) and six globals (Home, About, Contact, Resume, Navigation, SEO) model the content outlined in docs/PRD.md. Multi-stage Dockerfile builds a non-root standalone runner; Woodpecker pipeline lints, typechecks, builds, audits, builds with Kaniko to git.mosaicstack.dev, scans with Trivy, and links the package. Swarm compose mirrors the mosaic-stack-website Traefik entrypoints=web pattern with www->apex redirect and immutable WEB_IMAGE_TAG. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
1017 B
YAML
30 lines
1017 B
YAML
# =============================================================================
|
|
# jasonwoltje.com — local dev Postgres
|
|
# =============================================================================
|
|
# Brings up just Postgres for local `pnpm dev`. The Next app runs on the host
|
|
# via `pnpm dev` (not in-container) for fast iteration.
|
|
#
|
|
# docker compose up -d # start Postgres
|
|
# pnpm dev # run Next + Payload on host
|
|
# =============================================================================
|
|
|
|
services:
|
|
postgres:
|
|
image: postgres:17-alpine
|
|
environment:
|
|
POSTGRES_DB: ${PAYLOAD_POSTGRES_DB:-payload}
|
|
POSTGRES_USER: ${PAYLOAD_POSTGRES_USER:-payload}
|
|
POSTGRES_PASSWORD: ${PAYLOAD_POSTGRES_PASSWORD:-payload}
|
|
ports:
|
|
- "5432:5432"
|
|
volumes:
|
|
- postgres-data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER}"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
volumes:
|
|
postgres-data:
|