Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 15s
Promote lib/host into the docker stack behind blog.rose-ash.com (reusing a down Quart subdomain). New compose service sx_host runs lib/host/serve.sh on externalnet; Caddy reverse-proxies blog.rose-ash.com -> sx-dev-sx_host-1:8000. hosts/ fix: http-listen bound inet_addr_loopback only, unreachable from other containers. Add SX_HTTP_HOST env (default loopback for tests/local; stack sets 0.0.0.0) in sx_server.ml. serve.sh made container-friendly (SX_PROJECT_DIR). Verified live through Cloudflare->Caddy: /health, /feed, relations reads serve real JSON; / 404 (no root route yet). rose-ash.com untouched. Conformance 145/145 green with the rebuilt binary. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
38 lines
1.3 KiB
YAML
38 lines
1.3 KiB
YAML
# host-on-sx live service — the SX web host (lib/host) served by the native
|
|
# http-listen server via lib/host/serve.sh. Joins the sx-dev project + externalnet
|
|
# so Caddy can reverse_proxy a subdomain to it (blog.rose-ash.com). Isolated from
|
|
# the sx_docs server: separate container, separate port.
|
|
#
|
|
# Usage:
|
|
# docker compose -p sx-dev -f docker-compose.dev-sx-host.yml up -d sx_host
|
|
# docker compose -p sx-dev -f docker-compose.dev-sx-host.yml logs -f sx_host
|
|
# docker compose -p sx-dev -f docker-compose.dev-sx-host.yml down
|
|
|
|
services:
|
|
sx_host:
|
|
image: registry.rose-ash.com:5000/sx_docs:latest
|
|
container_name: sx-dev-sx_host-1
|
|
entrypoint: ["bash", "/app/lib/host/serve.sh"]
|
|
working_dir: /app
|
|
environment:
|
|
SX_PROJECT_DIR: /app
|
|
SX_SERVER: /app/bin/sx_server
|
|
HOST_PORT: "8000"
|
|
# Bind all interfaces so Caddy (on externalnet) can reach it.
|
|
SX_HTTP_HOST: "0.0.0.0"
|
|
OCAMLRUNPARAM: "b"
|
|
volumes:
|
|
# SX source (hot-reload on container restart)
|
|
- ./spec:/app/spec:ro
|
|
- ./lib:/app/lib:ro
|
|
# OCaml server binary — this worktree's build (has the SX_HTTP_HOST bind fix)
|
|
- ./hosts/ocaml/_build/default/bin/sx_server.exe:/app/bin/sx_server:ro
|
|
networks:
|
|
- externalnet
|
|
- default
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
externalnet:
|
|
external: true
|