mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 19:01:54 +00:00
The module was added while nothing selected it, so neither the Dockerfile COPY nor the build-context staging listed it and nothing noticed. The first provider to declare upstream_transport: sse would have crashed the sidecar at import instead of serving. Two places have to agree, because the context is assembled before it is built: instance.yml puts the file next to the Dockerfile, the COPY takes it into the image, and either one alone is inert. The lint parses server.py, resolves every import that names a sibling module, and requires each in both places, plus the reverse for a module nobody imports.
16 lines
516 B
Docker
16 lines
516 B
Docker
# Self-built MCP adapter image.
|
|
#
|
|
# Deliberately stdlib-only: the served surface is three JSON-RPC methods, and
|
|
# a dependency-free image has no transitive supply chain to audit per release.
|
|
ARG MCP_ADAPTER_BASE_IMAGE
|
|
ARG MCP_ADAPTER_BASE_VERSION
|
|
FROM ${MCP_ADAPTER_BASE_IMAGE}:${MCP_ADAPTER_BASE_VERSION}
|
|
|
|
WORKDIR /opt/adapter
|
|
COPY policy.py passthrough.py server.py sse.py /opt/adapter/
|
|
|
|
RUN adduser --system --no-create-home --disabled-login adapter
|
|
USER adapter
|
|
|
|
ENTRYPOINT ["python3", "/opt/adapter/server.py"]
|