diff options
Diffstat (limited to 'src/recommendation/Dockerfile')
| -rw-r--r-- | src/recommendation/Dockerfile | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/recommendation/Dockerfile b/src/recommendation/Dockerfile new file mode 100644 index 0000000..757b5f0 --- /dev/null +++ b/src/recommendation/Dockerfile @@ -0,0 +1,30 @@ +# Copyright The OpenTelemetry Authors +# SPDX-License-Identifier: Apache-2.0 + + +FROM docker.io/library/python:3.12-alpine3.22 AS build-venv + +RUN apk update && \ + apk add gcc g++ linux-headers + +COPY ./src/recommendation/requirements.txt requirements.txt + +RUN python -m venv venv && \ + venv/bin/pip install --no-cache-dir -r requirements.txt + +RUN venv/bin/opentelemetry-bootstrap -a install + +FROM docker.io/library/python:3.12-alpine3.22 + +COPY --from=build-venv /venv/ /venv/ + +WORKDIR /app + +COPY ./src/recommendation/demo_pb2_grpc.py demo_pb2_grpc.py +COPY ./src/recommendation/demo_pb2.py demo_pb2.py +COPY ./src/recommendation/logger.py logger.py +COPY ./src/recommendation/metrics.py metrics.py +COPY ./src/recommendation/recommendation_server.py recommendation_server.py + +EXPOSE ${RECOMMENDATION_PORT} +ENTRYPOINT [ "/venv/bin/opentelemetry-instrument", "/venv/bin/python", "recommendation_server.py" ] |
