2019-06-23 03:20:14 +02:00
|
|
|
FROM ubuntu:18.04
|
|
|
|
|
|
|
|
LABEL maintainer="Michael Mayer <michael@liquidbytes.net>"
|
|
|
|
|
|
|
|
ENV DEBIAN_FRONTEND noninteractive
|
2019-06-25 23:08:53 +02:00
|
|
|
ENV TMP /tmp
|
|
|
|
ENV EXTRA_BAZEL_ARGS "--host_javabase=@local_jdk//:jdk"
|
2019-06-23 03:20:14 +02:00
|
|
|
|
|
|
|
# Configure apt-get
|
|
|
|
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80retry
|
|
|
|
RUN echo 'APT::Install-Recommends "false";' > /etc/apt/apt.conf.d/80recommends
|
|
|
|
RUN echo 'APT::Install-Suggests "false";' > /etc/apt/apt.conf.d/80suggests
|
|
|
|
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/80forceyes
|
|
|
|
RUN echo 'APT::Get::Fix-Missing "true";' > /etc/apt/apt.conf.d/80fixmissin
|
|
|
|
|
|
|
|
# Install dev / build dependencies
|
|
|
|
RUN apt-get update && apt-get upgrade && \
|
|
|
|
apt-get install \
|
|
|
|
ca-certificates \
|
|
|
|
build-essential \
|
|
|
|
autoconf \
|
|
|
|
automake \
|
|
|
|
libtool \
|
|
|
|
g++-4.8 \
|
|
|
|
gcc-4.8 \
|
|
|
|
libc6-dev \
|
|
|
|
zlib1g-dev \
|
|
|
|
libssl-dev \
|
|
|
|
curl \
|
|
|
|
chrpath \
|
|
|
|
pkg-config \
|
|
|
|
unzip \
|
|
|
|
zip \
|
|
|
|
make \
|
|
|
|
nano \
|
|
|
|
wget \
|
2019-06-25 23:08:53 +02:00
|
|
|
git \
|
|
|
|
libtool \
|
|
|
|
python3 \
|
|
|
|
python3-git \
|
|
|
|
openjdk-8-jdk
|
2019-06-23 03:20:14 +02:00
|
|
|
|
2019-06-25 23:08:53 +02:00
|
|
|
# Use GCC 4.8 and Python 3 as default
|
2019-06-23 03:20:14 +02:00
|
|
|
# See https://www.tensorflow.org/install/source#tested_build_configurations
|
|
|
|
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 10 && \
|
2019-06-25 23:08:53 +02:00
|
|
|
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 10 && \
|
|
|
|
update-alternatives --install /usr/bin/python python /usr/bin/python3.6 10
|
2018-11-08 10:56:11 +01:00
|
|
|
|
2019-06-25 23:08:53 +02:00
|
|
|
# Download Bazel & TensorFlow
|
2019-06-23 03:20:14 +02:00
|
|
|
WORKDIR "/home/tensorflow"
|
2019-06-25 23:08:53 +02:00
|
|
|
RUN wget https://github.com/tensorflow/tensorflow/archive/v1.14.0.tar.gz
|
|
|
|
RUN wget https://github.com/bazelbuild/bazel/releases/download/0.24.1/bazel-0.24.1-dist.zip
|
|
|
|
RUN tar -xzf v1.14.0.tar.gz
|
2019-06-23 03:20:14 +02:00
|
|
|
|
2019-06-25 23:08:53 +02:00
|
|
|
# Build Bazel
|
|
|
|
WORKDIR "/home/tensorflow/bazel-0.24.1"
|
|
|
|
RUN unzip ../bazel-0.24.1-dist.zip
|
|
|
|
RUN bash ./compile.sh
|
|
|
|
RUN cp output/bazel /usr/local/bin/bazel
|
2018-11-08 10:56:11 +01:00
|
|
|
|
2019-06-25 23:08:53 +02:00
|
|
|
# Configure TensorFlow
|
|
|
|
WORKDIR "/home/tensorflow/tensorflow-1.14.0"
|
|
|
|
COPY /docker/tensorflow/*.sh .
|
|
|
|
COPY /docker/tensorflow/*.diff .
|
|
|
|
COPY /docker/tensorflow/.tf_configure.bazelrc .tf_configure.bazelrc
|
|
|
|
COPY /docker/tensorflow/Makefile Makefile
|
|
|
|
RUN make patch
|