mcserial/docs/docker-compose.yml
Ryan Malloy dc8caddb8f Add Starlight documentation site with full content
Astro 5 + Starlight docs site with 17 pages covering all 30 mcserial
tools. Structured using Diataxis framework: tutorials, guides, reference,
and concepts. Includes Docker + caddy-docker-proxy deployment for
mcserial.l.zmesh.systems with HMR support behind reverse proxy.

Content pages:
- Landing page with feature overview and quick start
- Tutorials: getting started, loopback testing (loop://)
- Guides: RS-232 basics, RS-485/Modbus, file transfers, network ports
- Reference: common tools, RS-232 tools, RS-485 tools, file transfer
  tools, URL schemes, MCP resources, environment variables
- Concepts: RS-232 vs RS-485, flow control
2026-02-02 22:01:48 -07:00

36 lines
1.1 KiB
YAML

services:
docs:
build:
context: .
target: ${APP_ENV:-dev}
restart: unless-stopped
environment:
- PUBLIC_DOMAIN=${PUBLIC_DOMAIN:-mcserial.l.zmesh.systems}
- VITE_HMR_HOST=${PUBLIC_DOMAIN:-mcserial.l.zmesh.systems}
- ASTRO_TELEMETRY_DISABLED=1
volumes:
# Dev mode: mount source for hot reload
- ./src:/app/src:ro
- ./public:/app/public:ro
- ./astro.config.mjs:/app/astro.config.mjs:ro
networks:
- caddy
labels:
# Caddy reverse proxy
caddy: ${PUBLIC_DOMAIN:-mcserial.l.zmesh.systems}
caddy.reverse_proxy: "{{upstreams 4321}}"
# WebSocket/HMR support for dev mode
caddy.reverse_proxy.flush_interval: "-1"
caddy.reverse_proxy.transport: "http"
caddy.reverse_proxy.transport.read_timeout: "0"
caddy.reverse_proxy.transport.write_timeout: "0"
caddy.reverse_proxy.transport.keepalive: "5m"
caddy.reverse_proxy.transport.keepalive_idle_conns: "10"
caddy.reverse_proxy.stream_timeout: "24h"
caddy.reverse_proxy.stream_close_delay: "5s"
networks:
caddy:
external: true