Goal
Use the published GHCR server image for production app startup instead of building the Python server image from bundled source on first launch.
Context
PR #86 publishes:
ghcr.io/chenglabresearch/ouroboros-server:<release-tag>
ghcr.io/chenglabresearch/ouroboros-server:sha-<commit>
Production startup currently loads extra-resources/server/compose.yml from src/main/servers/main-server.ts. The bundled production compose file should reference a release image instead of using build:.
Scope
- Generate or package
extra-resources/server/compose.yml with an immutable image: reference for the current release.
- Preserve the current ports, volume,
extra_hosts, environment, and shm_size behavior.
- Keep a local-build fallback for development or emergency use, but do not make production startup build by default.
- Document how release tags map to GHCR image tags.
- Verify a production app package starts the main server by pulling the image instead of building it.
Acceptance Criteria
- A production package includes a server compose file using
ghcr.io/chenglabresearch/ouroboros-server:<release-tag> or a digest-pinned equivalent.
- First launch pulls the server image and does not run a Docker build for the core server.
- Development compose files still build from source.
- Release documentation identifies the image tag/digest used by the package.
Goal
Use the published GHCR server image for production app startup instead of building the Python server image from bundled source on first launch.
Context
PR #86 publishes:
ghcr.io/chenglabresearch/ouroboros-server:<release-tag>ghcr.io/chenglabresearch/ouroboros-server:sha-<commit>Production startup currently loads
extra-resources/server/compose.ymlfromsrc/main/servers/main-server.ts. The bundled production compose file should reference a release image instead of usingbuild:.Scope
extra-resources/server/compose.ymlwith an immutableimage:reference for the current release.extra_hosts, environment, andshm_sizebehavior.Acceptance Criteria
ghcr.io/chenglabresearch/ouroboros-server:<release-tag>or a digest-pinned equivalent.