-
Notifications
You must be signed in to change notification settings - Fork 0
/
Singularity
113 lines (102 loc) · 2.4 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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# Your version: 0.6.0 Latest version: 0.6.0
# Generated by Neurodocker version 0.6.0
# Timestamp: 2019-10-20 21:58:19 UTC
#
# Thank you for using Neurodocker. If you discover any issues
# or ways to improve this software, please submit an issue or
# pull request on our GitHub repository:
#
# https://github.com/kaczmarj/neurodocker
Bootstrap: docker
From: debian:testing
%post
export ND_ENTRYPOINT="/neurodocker/startup.sh"
apt-get update -qq
apt-get install -y -q --no-install-recommends \
apt-utils \
bzip2 \
ca-certificates \
curl \
locales \
unzip
apt-get clean
rm -rf /var/lib/apt/lists/*
sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen
dpkg-reconfigure --frontend=noninteractive locales
update-locale LANG="en_US.UTF-8"
chmod 777 /opt && chmod a+s /opt
mkdir -p /neurodocker
if [ ! -f "$ND_ENTRYPOINT" ]; then
echo '#!/usr/bin/env bash' >> "$ND_ENTRYPOINT"
echo 'set -e' >> "$ND_ENTRYPOINT"
echo 'export USER="${USER:=`whoami`}"' >> "$ND_ENTRYPOINT"
echo 'if [ -n "$1" ]; then "$@"; else /usr/bin/env bash; fi' >> "$ND_ENTRYPOINT";
fi
chmod -R 777 /neurodocker && chmod a+s /neurodocker
apt-get update -qq
apt-get install -y -q --no-install-recommends \
python3-h5py \
python3-pip \
hdf5-tools
apt-get clean
rm -rf /var/lib/apt/lists/*
mkdir -p /opt/mpidemos
chmod a+rX -R /opt/mpidemos
python3 -m pip install pynwb
test "$(getent passwd nwb)" || useradd --no-user-group --create-home --shell /bin/bash nwb
su - nwb
echo '{
\n "pkg_manager": "apt",
\n "instructions": [
\n [
\n "base",
\n "debian:testing"
\n ],
\n [
\n "_header",
\n {
\n "method": "custom",
\n "version": "generic"
\n }
\n ],
\n [
\n "install",
\n [
\n "python3-h5py",
\n "python3-pip",
\n "hdf5-tools"
\n ]
\n ],
\n [
\n "run",
\n "mkdir -p /opt/mpidemos"
\n ],
\n [
\n "copy",
\n [
\n "testme2.py",
\n "/opt/mpidemos"
\n ]
\n ],
\n [
\n "run",
\n "chmod a+rX -R /opt/mpidemos"
\n ],
\n [
\n "run",
\n "python3 -m pip install pynwb"
\n ],
\n [
\n "user",
\n "nwb"
\n ]
\n ]
\n}' > /neurodocker/neurodocker_specs.json
%environment
export LC_ALL="en_US.UTF-8"
export LANG="en_US.UTF-8"
export ND_ENTRYPOINT="/neurodocker/startup.sh"
%files
testme2.py /opt/mpidemos
%runscript
/neurodocker/startup.sh "$@"