1
+ ARG TF_SERVING_VERSION=latest
2
+ ARG TF_SERVING_BUILD_IMAGE=tensorflow/serving:${TF_SERVING_VERSION}-devel
3
+
4
+ FROM ${TF_SERVING_BUILD_IMAGE} as build_image
5
+ FROM ubuntu:18.04
6
+
7
+ ARG TF_SERVING_VERSION_GIT_BRANCH=master
8
+ ARG TF_SERVING_VERSION_GIT_COMMIT=head
9
+
10
+ LABEL maintainer="swapnanildutta2000@gmail.com"
11
+ LABEL tensorflow_serving_github_branchtag=${TF_SERVING_VERSION_GIT_BRANCH}
12
+ LABEL tensorflow_serving_github_commit=${TF_SERVING_VERSION_GIT_COMMIT}
13
+
14
+ RUN apt-get update && apt-get install -y --no-install-recommends \
15
+ ca-certificates \
16
+ && \
17
+ apt-get clean && \
18
+ rm -rf /var/lib/apt/lists/*
19
+
20
+ # Install TF Serving pkg
21
+ COPY --from=build_image /usr/local/bin/tensorflow_model_server /usr/bin/tensorflow_model_server
22
+
23
+ # Expose ports
24
+ # gRPC
25
+ EXPOSE 8500
26
+
27
+ # REST
28
+ EXPOSE 8501
29
+
30
+ # Set where models should be stored in the container
31
+ ENV MODEL_BASE_PATH=/models
32
+ RUN mkdir -p ${MODEL_BASE_PATH}
33
+
34
+ # The only required piece is the model name in order to differentiate endpoints
35
+ ENV MODEL_NAME=saved_model
36
+
37
+ COPY models models
38
+ # Create a script that runs the model server so we can use environment variables
39
+ # while also passing in arguments from the docker command line
40
+ RUN echo '#!/bin/bash \n\n \
41
+ tensorflow_model_server --rest_api_port=$PORT \
42
+ --model_name=${MODEL_NAME} --model_base_path=${MODEL_BASE_PATH}/${MODEL_NAME} \
43
+ "$@"' > /usr/bin/tf_serving_entrypoint.sh \
44
+ && chmod +x /usr/bin/tf_serving_entrypoint.sh
45
+
46
+ CMD ["/usr/bin/tf_serving_entrypoint.sh" ]
0 commit comments