2016-10-29 00:44:29 +02:00
|
|
|
# Image for launching TensorFlow Haskell tests. Unlike the
|
|
|
|
# development image in docker/Dockerfile, this one doesn't require
|
|
|
|
# stack to be installed on the host. This comes at the expense of
|
|
|
|
# flexibility.
|
|
|
|
|
2019-07-15 23:16:58 +02:00
|
|
|
FROM tensorflow/tensorflow:1.14.0
|
2017-10-25 04:31:13 +02:00
|
|
|
LABEL maintainer="TensorFlow authors <tensorflow-haskell@googlegroups.com>"
|
2016-10-28 03:57:37 +02:00
|
|
|
|
2016-10-29 00:44:29 +02:00
|
|
|
# The build context directory is the top of the tensorflow-haskell
|
|
|
|
# tree.
|
|
|
|
ADD . /tfhs
|
|
|
|
WORKDIR /tfhs
|
|
|
|
|
2016-10-28 03:57:37 +02:00
|
|
|
RUN \
|
|
|
|
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 575159689BEFB442 && \
|
2016-10-29 00:44:29 +02:00
|
|
|
apt-get update && \
|
|
|
|
apt-get install -y \
|
2017-02-09 04:12:31 +01:00
|
|
|
# Required by snappy-frames dependency.
|
|
|
|
libsnappy-dev \
|
2016-10-28 03:57:37 +02:00
|
|
|
# Avoids /usr/bin/ld: cannot find -ltinfo
|
|
|
|
libncurses5-dev \
|
|
|
|
# Makes stack viable in the container
|
|
|
|
libgmp-dev \
|
|
|
|
libcurl3-dev \
|
2019-07-15 23:16:58 +02:00
|
|
|
zlib1g-dev \
|
|
|
|
# For fetching dependencies
|
|
|
|
curl \
|
|
|
|
unzip \
|
2018-05-16 05:19:15 +02:00
|
|
|
# Required for tcp connections by stack (See: https://github.com/tensorflow/haskell/issues/182)
|
|
|
|
netbase \
|
|
|
|
&& \
|
|
|
|
# Installs stack.
|
2019-09-08 21:45:24 +02:00
|
|
|
curl -O -L https://github.com/commercialhaskell/stack/releases/download/v2.1.3/stack-2.1.3-linux-x86_64.tar.gz && \
|
|
|
|
tar zxf stack-2.1.3-linux-x86_64.tar.gz -C /usr/local/bin stack-2.1.3-linux-x86_64/stack --strip 1 && \
|
2016-10-29 00:44:29 +02:00
|
|
|
# Installs protoc and the libraries.
|
2019-09-08 21:45:24 +02:00
|
|
|
curl -O -L https://github.com/google/protobuf/releases/download/v3.9.1/protoc-3.9.1-linux-x86_64.zip && \
|
|
|
|
unzip -d /usr/local protoc-3.9.1-linux-x86_64.zip bin/protoc && \
|
2017-02-09 23:20:43 +01:00
|
|
|
chmod 755 /usr/local/bin/protoc && \
|
2019-07-15 23:16:58 +02:00
|
|
|
curl -O https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-1.14.0.tar.gz && \
|
|
|
|
tar zxf libtensorflow-cpu-linux-x86_64-1.14.0.tar.gz -C /usr/local && \
|
2017-02-09 23:20:43 +01:00
|
|
|
ldconfig && \
|
2017-05-10 05:49:51 +02:00
|
|
|
stack setup && \
|
|
|
|
stack test --only-dependencies
|