docker stack deploy does not read .env files automatically
(unlike docker compose), so ${VAR} substitutions resolve to
empty strings. Source .env to export vars before deploying.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add CI workflow mirroring celery pipeline: SSH to deploy server,
git pull, build and push to registry, deploy docker stack.
Update docker-compose to pull l2-server from registry.rose-ash.com:5000.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>