# Copyright 2018 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. FROM tensorflow/serving:latest-devel as binary_build WORKDIR /tensorflow-serving # Build, and install TensorFlow Serving ARG TF_SERVING_BUILD_OPTIONS="--config=nativeopt" RUN echo "Building with build options: ${TF_SERVING_BUILD_OPTIONS}" ARG TF_SERVING_BAZEL_OPTIONS="" RUN echo "Building with Bazel options: ${TF_SERVING_BAZEL_OPTIONS}" RUN bazel build -j 8 --color=yes --curses=yes \ ${TF_SERVING_BAZEL_OPTIONS} \ --verbose_failures \ --force_pic \ --output_filter=DONT_MATCH_ANYTHING \ ${TF_SERVING_BUILD_OPTIONS} \ tensorflow_serving/model_servers:tensorflow_model_server && \ cp bazel-bin/tensorflow_serving/model_servers/tensorflow_model_server \ /usr/local/bin/ # Build and install TensorFlow Serving API RUN bazel build -j 8 --color=yes --curses=yes \ ${TF_SERVING_BAZEL_OPTIONS} \ --force_pic \ --verbose_failures \ --output_filter=DONT_MATCH_ANYTHING \ ${TF_SERVING_BUILD_OPTIONS} \ tensorflow_serving/tools/pip_package:build_pip_package && \ bazel-bin/tensorflow_serving/tools/pip_package/build_pip_package \ /tmp/pip && \ pip --no-cache-dir install --upgrade \ /tmp/pip/tensorflow_serving_api-*.whl && \ rm -rf /tmp/pip FROM binary_build as clean_build # Clean up Bazel cache when done. RUN bazel clean --expunge --color=yes && \ rm -rf /root/.cache CMD ["/bin/bash"]