forked from rses-singularity/tensorflow-gpu
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Singularity
80 lines (54 loc) · 1.69 KB
/
Singularity
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
Bootstrap: docker
From: nvidia/cuda:9.0-cudnn7-devel-ubuntu16.04
%environment
#Environment variables
#Use bash as default shell
SHELL=/bin/bash
#Add nvidia driver paths
PATH="/nvbin:$PATH"
LD_LIBRARY_PATH="/nvlib;$LD_LIBRARY_PATH"
#Add CUDA paths
CPATH="/usr/local/cuda/include:$CPATH"
PATH="/usr/local/cuda/bin:$PATH"
LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"
CUDA_HOME="/usr/local/cuda"
#Add Anaconda path
PATH="/usr/local/anaconda3-4.2.0/bin:$PATH"
export PATH LD_LIBRARY_PATH CPATH CUDA_HOME
%setup
#Runs on host
#The path to the image is $SINGULARITY_ROOTFS
%post
#Post setup script
#Load environment variables
. /environment
#Default mount paths
mkdir /scratch /data /shared /fastdata
#Nvidia Library mount paths
mkdir /nvlib /nvbin
#Updating and getting required packages
apt-get update
apt-get install -y wget git vim
#Creates a build directory
mkdir build
cd build
#Download and install Anaconda
CONDA_INSTALL_PATH="/usr/local/anaconda3-4.2.0"
wget https://repo.continuum.io/archive/Anaconda3-4.2.0-Linux-x86_64.sh
chmod +x Anaconda3-4.2.0-Linux-x86_64.sh
./Anaconda3-4.2.0-Linux-x86_64.sh -b -p $CONDA_INSTALL_PATH
pip install -U pip
#Install Tensorflow
TF_PYTHON_URL="https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.9.0-cp35-cp35m-linux_x86_64.whl"
pip install --ignore-installed --upgrade $TF_PYTHON_URL
#Install Keras
pip install keras
%runscript
#Executes with the singularity run command
#delete this section to use existing docker ENTRYPOINT command
%test
#Test that script is a success
#Load environment variables
#. /environment
#Test tensorflow install
#python -c "import tensorflow"