mirror of https://github.com/kubeflow/examples.git
60 lines
1.3 KiB
Docker
60 lines
1.3 KiB
Docker
FROM ubuntu:16.04
|
|
MAINTAINER "David Sabater"
|
|
|
|
# add TF dependencies
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
build-essential \
|
|
curl \
|
|
libfreetype6-dev \
|
|
libpng12-dev \
|
|
libzmq3-dev \
|
|
pkg-config \
|
|
python3 \
|
|
python-dev \
|
|
rsync \
|
|
software-properties-common \
|
|
unzip \
|
|
&& \
|
|
apt-get clean && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
# add python dependencies
|
|
RUN curl -O https://bootstrap.pypa.io/get-pip.py && \
|
|
python get-pip.py && \
|
|
rm get-pip.py
|
|
|
|
ADD proto/* /home/proto/
|
|
|
|
RUN pip --no-cache-dir install \
|
|
Pillow \
|
|
h5py \
|
|
ipykernel \
|
|
requests \
|
|
grpcio \
|
|
grpcio-tools \
|
|
protobuf \
|
|
numpy \
|
|
tensorflow \
|
|
tensorflow-serving-api \
|
|
flask \
|
|
&& \
|
|
python -m ipykernel.kernelspec && \
|
|
python -m grpc.tools.protoc -I/home/proto --python_out=/home/proto \
|
|
--grpc_python_out=/home/proto \
|
|
--proto_path=/home/proto prediction.proto
|
|
|
|
# show python logs as they occur
|
|
ENV PYTHONUNBUFFERED=0
|
|
|
|
# add project files
|
|
ADD *.py /home/
|
|
ADD templates/* /home/templates/
|
|
ADD static/styles /home/static/styles/
|
|
RUN mkdir /home/static/tmp/
|
|
ADD static/scripts/ /home/static/scripts/
|
|
|
|
# start server on port 5000
|
|
WORKDIR /home/
|
|
EXPOSE 5000
|
|
ENTRYPOINT python flask_server.py
|