# Hello-World example app — Dockerfile template for partner apps.
#
# Build: docker build -t ghcr.io/<your-org>/hello-world:0.1.0 .
# Push:  docker push ghcr.io/<your-org>/hello-world:0.1.0
#
# The Linkworld platform pulls this image from GHCR (must be public
# during Phase 2) when a tenant activates the app.

FROM python:3.12-slim

WORKDIR /app

# Install the SDK + this app's deps. In a real partner repo this would
# be a `pyproject.toml` with `linkworld-sdk` as a dependency; for the
# in-tree example we install from the workspace.
RUN pip install --no-cache-dir linkworld-sdk

COPY linkworld.app.yaml main.py ./

# The SDK reads runtime.port from the manifest; expose a default.
EXPOSE 8080

# Production: full MCP runtime (M5+); for now this exits with an
# instructive error and the operator runs locally with LINKWORLD_LOCAL=1.
CMD ["python", "main.py"]
