-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
12 changed files
with
672 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
/* | ||
!.gitignore | ||
!/2.12.0/ | ||
!/2.12.1/ | ||
!/2.13.0/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
# Copyright 2018 The TensorFlow Authors. All Rights Reserved. | ||
# | ||
# 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 | ||
# | ||
# http://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. | ||
# | ||
# ============================================================================== | ||
|
||
# If not running interactively, don't do anything | ||
[ -z "$PS1" ] && return | ||
|
||
export PS1="\[\e[31m\]tf-docker\[\e[m\] \[\e[33m\]\w\[\e[m\] > " | ||
export TERM=xterm-256color | ||
alias grep="grep --color=auto" | ||
alias ls="ls --color=auto" | ||
|
||
echo -e "\e[1;31m" | ||
cat<<TF | ||
________ _______________ | ||
___ __/__________________________________ ____/__ /________ __ | ||
__ / _ _ \_ __ \_ ___/ __ \_ ___/_ /_ __ /_ __ \_ | /| / / | ||
_ / / __/ / / /(__ )/ /_/ / / _ __/ _ / / /_/ /_ |/ |/ / | ||
/_/ \___//_/ /_//____/ \____//_/ /_/ /_/ \____/____/|__/ | ||
TF | ||
echo -e "\e[0;33m" | ||
|
||
if [[ $EUID -eq 0 ]]; then | ||
cat <<WARN | ||
WARNING: You are running this container as root, which can cause new files in | ||
mounted volumes to be created as the root user on your host machine. | ||
To avoid this, run the container by specifying your user's userid: | ||
$ docker run -u \$(id -u):\$(id -g) args... | ||
WARN | ||
else | ||
cat <<EXPL | ||
You are running this container as user with ID $(id -u) and group $(id -g), | ||
which should map to the ID and group for your user on the Docker host. Great! | ||
EXPL | ||
fi | ||
|
||
# Turn off colors | ||
echo -e "\e[m" |
107 changes: 107 additions & 0 deletions
107
docker/.Dockerfiles/2.12.0/dockerfiles/devel-cpu.Dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
# Copyright 2019 The TensorFlow Authors. All Rights Reserved. | ||
# | ||
# 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 | ||
# | ||
# http://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. | ||
# ============================================================================ | ||
# | ||
# THIS IS A GENERATED DOCKERFILE. | ||
# | ||
# This file was assembled from multiple pieces, whose use is documented | ||
# throughout. Please refer to the TensorFlow dockerfiles documentation | ||
# for more information. | ||
|
||
ARG UBUNTU_VERSION=20.04 | ||
|
||
FROM ubuntu:${UBUNTU_VERSION} AS base | ||
|
||
ENV DEBIAN_FRONTEND=noninteractive | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
build-essential \ | ||
clang-format \ | ||
curl \ | ||
git \ | ||
libcurl3-dev \ | ||
libfreetype6-dev \ | ||
libhdf5-serial-dev \ | ||
libzmq3-dev \ | ||
pkg-config \ | ||
rsync \ | ||
software-properties-common \ | ||
sudo \ | ||
unzip \ | ||
zip \ | ||
zlib1g-dev \ | ||
openjdk-8-jdk \ | ||
openjdk-8-jre-headless \ | ||
&& \ | ||
apt-get clean && \ | ||
rm -rf /var/lib/apt/lists/* | ||
|
||
ENV CI_BUILD_PYTHON python | ||
|
||
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version | ||
ARG CACHE_STOP=1 | ||
# Check out TensorFlow source code if --build-arg CHECKOUT_TF_SRC=1 | ||
ARG CHECKOUT_TF_SRC=0 | ||
# In case of Python 2.7+ we need to add passwd entries for user and group id | ||
RUN chmod a+w /etc/passwd /etc/group | ||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone --depth=1 https://github.com/tensorflow/tensorflow.git /tensorflow_src || true | ||
|
||
# See http://bugs.python.org/issue19846 | ||
ENV LANG C.UTF-8 | ||
|
||
RUN apt-get update && apt-get install -y \ | ||
python3 \ | ||
python3-pip | ||
|
||
RUN python3 -m pip --no-cache-dir install --upgrade \ | ||
"pip<20.3" \ | ||
setuptools | ||
|
||
# Some TF tools expect a "python" binary | ||
RUN ln -s $(which python3) /usr/local/bin/python | ||
|
||
RUN apt-get update && apt-get install -y \ | ||
build-essential \ | ||
curl \ | ||
git \ | ||
wget \ | ||
openjdk-8-jdk \ | ||
python3-dev \ | ||
virtualenv \ | ||
swig | ||
|
||
RUN python3 -m pip --no-cache-dir install \ | ||
Pillow \ | ||
h5py \ | ||
keras_preprocessing \ | ||
tb-nightly \ | ||
matplotlib \ | ||
mock \ | ||
'numpy<1.19.0' \ | ||
scipy \ | ||
scikit-learn \ | ||
pandas \ | ||
future \ | ||
portpicker \ | ||
enum34 | ||
|
||
# Installs bazelisk | ||
RUN mkdir /bazel && \ | ||
curl -fSsL -o /bazel/LICENSE.txt "https://raw.githubusercontent.com/bazelbuild/bazel/master/LICENSE" && \ | ||
mkdir /bazelisk && \ | ||
curl -fSsL -o /bazelisk/LICENSE.txt "https://raw.githubusercontent.com/bazelbuild/bazelisk/master/LICENSE" && \ | ||
curl -fSsL -o /usr/bin/bazel "https://github.com/bazelbuild/bazelisk/releases/download/v1.11.0/bazelisk-linux-amd64" && \ | ||
chmod +x /usr/bin/bazel | ||
|
||
COPY bashrc /etc/bash.bashrc | ||
RUN chmod a+rwx /etc/bash.bashrc |
151 changes: 151 additions & 0 deletions
151
docker/.Dockerfiles/2.12.0/dockerfiles/devel-gpu.Dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,151 @@ | ||
# Copyright 2019 The TensorFlow Authors. All Rights Reserved. | ||
# | ||
# 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 | ||
# | ||
# http://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. | ||
# ============================================================================ | ||
# | ||
# THIS IS A GENERATED DOCKERFILE. | ||
# | ||
# This file was assembled from multiple pieces, whose use is documented | ||
# throughout. Please refer to the TensorFlow dockerfiles documentation | ||
# for more information. | ||
|
||
ARG UBUNTU_VERSION=20.04 | ||
|
||
ARG ARCH= | ||
ARG CUDA=11.8 | ||
FROM nvidia/cuda${ARCH:+-$ARCH}:${CUDA}.0-devel-ubuntu${UBUNTU_VERSION} as base | ||
# ARCH and CUDA are specified again because the FROM directive resets ARGs | ||
# (but their default value is retained if set previously) | ||
ARG ARCH | ||
ARG CUDA | ||
ARG CUDNN=8.6.0.163-1 | ||
ARG CUDNN_MAJOR_VERSION=8 | ||
ARG LIB_DIR_PREFIX=x86_64 | ||
ARG LIBNVINFER=8.5.3-1 | ||
ARG LIBNVINFER_MAJOR_VERSION=8 | ||
|
||
# Needed for string substitution | ||
SHELL ["/bin/bash", "-c"] | ||
ENV DEBIAN_FRONTEND=noninteractive | ||
RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/3bf863cc.pub && \ | ||
apt-get update && apt-get install -y --no-install-recommends \ | ||
build-essential \ | ||
clang-format \ | ||
cuda-command-line-tools-${CUDA/./-} \ | ||
libcublas-${CUDA/./-} \ | ||
libcublas-dev-${CUDA/./-} \ | ||
cuda-nvprune-${CUDA/./-} \ | ||
cuda-nvrtc-${CUDA/./-} \ | ||
cuda-nvrtc-dev-${CUDA/./-} \ | ||
cuda-cudart-dev-${CUDA/./-} \ | ||
libcufft-dev-${CUDA/./-} \ | ||
libcurand-dev-${CUDA/./-} \ | ||
libcusolver-dev-${CUDA/./-} \ | ||
libcusparse-dev-${CUDA/./-} \ | ||
libcudnn8=${CUDNN}+cuda${CUDA} \ | ||
libcudnn8-dev=${CUDNN}+cuda${CUDA} \ | ||
libcurl3-dev \ | ||
libfreetype6-dev \ | ||
libhdf5-serial-dev \ | ||
libzmq3-dev \ | ||
pkg-config \ | ||
rsync \ | ||
software-properties-common \ | ||
unzip \ | ||
zip \ | ||
zlib1g-dev \ | ||
wget \ | ||
git \ | ||
&& \ | ||
find /usr/local/cuda-${CUDA}/lib64/ -type f -name 'lib*_static.a' -not -name 'libcudart_static.a' -delete | ||
|
||
# Install TensorRT if not building for PowerPC | ||
# NOTE: libnvinfer uses cuda11.1 versions | ||
RUN [[ "${ARCH}" = "ppc64le" ]] || { apt-get update && \ | ||
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/7fa2af80.pub && \ | ||
echo "deb https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/tensorRT.list && \ | ||
apt-get update && \ | ||
apt-get install -y --no-install-recommends libnvinfer${LIBNVINFER_MAJOR_VERSION}=${LIBNVINFER}+cuda11.8 \ | ||
libnvinfer-dev=${LIBNVINFER}+cuda11.8 \ | ||
libnvinfer-plugin-dev=${LIBNVINFER}+cuda11.8 \ | ||
libnvinfer-plugin${LIBNVINFER_MAJOR_VERSION}=${LIBNVINFER}+cuda11.8 \ | ||
&& apt-get clean \ | ||
&& rm -rf /var/lib/apt/lists/*; } | ||
|
||
# Configure the build for our CUDA configuration. | ||
ENV LD_LIBRARY_PATH /usr/local/cuda-11.8/targets/x86_64-linux/lib:/usr/local/cuda/extras/CUPTI/lib64:/usr/local/cuda/lib64:/usr/include/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH:/usr/local/cuda/lib64/stubs:/usr/local/cuda-11.8/lib64:/usr/local/cuda-11.2/lib64 | ||
ENV TF_NEED_CUDA 1 | ||
ENV TF_NEED_TENSORRT 1 | ||
ENV TF_CUDA_VERSION=${CUDA} | ||
ENV TF_CUDNN_VERSION=${CUDNN_MAJOR_VERSION} | ||
# CACHE_STOP is used to rerun future commands, otherwise cloning tensorflow will be cached and will not pull the most recent version | ||
ARG CACHE_STOP=1 | ||
# Check out TensorFlow source code if --build-arg CHECKOUT_TF_SRC=1 | ||
ARG CHECKOUT_TF_SRC=0 | ||
RUN test "${CHECKOUT_TF_SRC}" -eq 1 && git clone --depth=1 https://github.com/tensorflow/tensorflow.git /tensorflow_src || true | ||
|
||
# Link the libcuda stub to the location where tensorflow is searching for it and reconfigure | ||
# dynamic linker run-time bindings | ||
RUN ln -s /usr/local/cuda/lib64/stubs/libcuda.so /usr/local/cuda/lib64/stubs/libcuda.so.1 \ | ||
&& echo "/usr/local/cuda/lib64/stubs" > /etc/ld.so.conf.d/z-cuda-stubs.conf \ | ||
&& ldconfig | ||
|
||
# See http://bugs.python.org/issue19846 | ||
ENV LANG C.UTF-8 | ||
|
||
RUN apt-get update && apt-get install -y \ | ||
python3 \ | ||
python3-pip | ||
|
||
RUN python3 -m pip --no-cache-dir install --upgrade \ | ||
"pip<20.3" \ | ||
setuptools | ||
|
||
# Some TF tools expect a "python" binary | ||
RUN ln -s $(which python3) /usr/local/bin/python | ||
|
||
RUN apt-get update && apt-get install -y \ | ||
build-essential \ | ||
curl \ | ||
git \ | ||
wget \ | ||
openjdk-8-jdk \ | ||
python3-dev \ | ||
virtualenv \ | ||
swig | ||
|
||
RUN python3 -m pip --no-cache-dir install \ | ||
Pillow \ | ||
h5py \ | ||
keras_preprocessing \ | ||
tb-nightly \ | ||
matplotlib \ | ||
mock \ | ||
'numpy<1.19.0' \ | ||
scipy \ | ||
scikit-learn \ | ||
pandas \ | ||
future \ | ||
portpicker \ | ||
enum34 | ||
|
||
# Installs bazelisk | ||
RUN mkdir /bazel && \ | ||
curl -fSsL -o /bazel/LICENSE.txt "https://raw.githubusercontent.com/bazelbuild/bazel/master/LICENSE" && \ | ||
mkdir /bazelisk && \ | ||
curl -fSsL -o /bazelisk/LICENSE.txt "https://raw.githubusercontent.com/bazelbuild/bazelisk/master/LICENSE" && \ | ||
curl -fSsL -o /usr/bin/bazel "https://github.com/bazelbuild/bazelisk/releases/download/v1.11.0/bazelisk-linux-amd64" && \ | ||
chmod +x /usr/bin/bazel | ||
|
||
COPY bashrc /etc/bash.bashrc | ||
RUN chmod a+rwx /etc/bash.bashrc |
Oops, something went wrong.