@@ -7,7 +7,7 @@ COPY . /src/nibabies
7
7
RUN python -m build /src/nibabies
8
8
9
9
# Ubuntu 20.04 LTS
10
- FROM ubuntu:focal -20221130
10
+ FROM ubuntu:jammy -20221130
11
11
ENV DEBIAN_FRONTEND="noninteractive" \
12
12
LANG="en_US.UTF-8" \
13
13
LC_ALL="en_US.UTF-8"
@@ -22,12 +22,11 @@ RUN apt-get update && \
22
22
ca-certificates \
23
23
curl \
24
24
git \
25
- graphviz \
25
+ gnupg \
26
26
libtool \
27
27
locales \
28
28
lsb-release \
29
- pandoc \
30
- pandoc-citeproc \
29
+ netbase \
31
30
pkg-config \
32
31
unzip \
33
32
xvfb && \
@@ -44,6 +43,9 @@ WORKDIR $ANTSPATH
44
43
RUN curl -sSL "https://dl.dropbox.com/s/gwf51ykkk5bifyj/ants-Linux-centos6_x86_64-v2.3.4.tar.gz" \
45
44
| tar -xzC $ANTSPATH --strip-components 1
46
45
46
+ RUN GNUPGHOME=/tmp gpg --keyserver hkps://keyserver.ubuntu.com --no-default-keyring --keyring /usr/share/keyrings/linuxuprising.gpg --recv 0xEA8CACC073C3DB2A \
47
+ && echo "deb [signed-by=/usr/share/keyrings/linuxuprising.gpg] https://ppa.launchpadcontent.net/linuxuprising/libpng12/ubuntu jammy main" > /etc/apt/sources.list.d/linuxuprising.list
48
+
47
49
# # AFNI latest (neurodocker build)
48
50
RUN apt-get update -qq \
49
51
&& apt-get install -y -q --no-install-recommends \
@@ -54,6 +56,7 @@ RUN apt-get update -qq \
54
56
libglw1-mesa \
55
57
libgomp1 \
56
58
libjpeg62 \
59
+ libpng12-0 \
57
60
libxm4 \
58
61
netpbm \
59
62
tcsh \
@@ -67,9 +70,6 @@ RUN apt-get update -qq \
67
70
&& curl -sSL --retry 5 -o /tmp/libxp6.deb http://mirrors.kernel.org/debian/pool/main/libx/libxp/libxp6_1.0.2-2_amd64.deb \
68
71
&& dpkg -i /tmp/libxp6.deb \
69
72
&& rm /tmp/libxp6.deb \
70
- && curl -sSL --retry 5 -o /tmp/libpng.deb http://snapshot.debian.org/archive/debian-security/20160113T213056Z/pool/updates/main/libp/libpng/libpng12-0_1.2.49-1%2Bdeb7u2_amd64.deb \
71
- && dpkg -i /tmp/libpng.deb \
72
- && rm /tmp/libpng.deb \
73
73
&& apt-get install -f \
74
74
&& apt-get clean \
75
75
&& rm -rf /var/lib/apt/lists/* \
@@ -111,16 +111,6 @@ RUN echo "Downloading AFNI ..." \
111
111
-name "3dAutomask" -or \
112
112
-name "3dvolreg" \) -delete
113
113
114
- # Convert3D (neurodocker build)
115
- RUN echo "Downloading Convert3D ..." \
116
- && mkdir -p /opt/convert3d-1.0.0 \
117
- && curl -fsSL --retry 5 https://sourceforge.net/projects/c3d/files/c3d/1.0.0/c3d-1.0.0-Linux-x86_64.tar.gz/download \
118
- | tar -xz -C /opt/convert3d-1.0.0 --strip-components 1 \
119
- --exclude "c3d-1.0.0-Linux-x86_64/lib" \
120
- --exclude "c3d-1.0.0-Linux-x86_64/share" \
121
- --exclude "c3d-1.0.0-Linux-x86_64/bin/c3d_gui"
122
- ENV C3DPATH="/opt/convert3d-1.0.0" \
123
- PATH="/opt/convert3d-1.0.0/bin:$PATH"
124
114
125
115
# FSL 6.0.5.1
126
116
RUN apt-get update -qq \
@@ -213,7 +203,8 @@ ENV SUBJECTS_DIR="$FREESURFER_HOME/subjects" \
213
203
MINC_BIN_DIR="$FREESURFER_HOME/mni/bin" \
214
204
MINC_LIB_DIR="$FREESURFER_HOME/mni/lib" \
215
205
MNI_DATAPATH="$FREESURFER_HOME/mni/data" \
216
- FSL_DIR=${FSLDIR}
206
+ FSL_DIR=${FSLDIR} \
207
+ FREESURFER="/opt/freesurfer"
217
208
ENV PERL5LIB="$MINC_LIB_DIR/perl5/5.8.5" \
218
209
MNI_PERL5LIB="$MINC_LIB_DIR/perl5/5.8.5" \
219
210
PATH="$FREESURFER_HOME/bin:$FREESURFER_HOME/tktools:$MINC_BIN_DIR:$PATH"
@@ -242,16 +233,17 @@ ENV PATH="/opt/ICA-AROMA:$PATH" \
242
233
AROMA_VERSION="0.4.5"
243
234
244
235
# Create a shared $HOME directory
245
- RUN useradd -m -s /bin/bash -G users nibabies
236
+ RUN useradd -m -s /bin/bash -G users nibabies && chmod -R 777 /home/nibabies
246
237
WORKDIR /home/nibabies
247
- ENV HOME="/home/nibabies"
238
+ ENV HOME="/home/nibabies" \
239
+ LD_LIBRARY_PATH="/usr/lib/x86_64-linux-gnu:${LD_LIBRARY_PATH}"
248
240
249
241
# py39_2209.01
250
242
COPY --from=nipreps/miniconda@sha256:8894ca17e3c8ba963812a6876093463eab6b88871bcfe23f71ebc84cf38451db /opt/conda /opt/conda
251
243
252
244
RUN ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh && \
253
- echo ". /opt/conda/etc/profile.d/conda.sh" >> ~ /.bashrc && \
254
- echo "conda activate base" >> ~ /.bashrc
245
+ echo ". /opt/conda/etc/profile.d/conda.sh" >> ${HOME} /.bashrc && \
246
+ echo "conda activate base" >> ${HOME} /.bashrc
255
247
256
248
# Set CPATH for packages relying on compiled libs (e.g. indexed_gzip)
257
249
ENV PATH="/opt/conda/bin:$PATH" \
@@ -262,10 +254,19 @@ ENV PATH="/opt/conda/bin:$PATH" \
262
254
IS_DOCKER_8395080871=1 \
263
255
CONDA_PYTHON="/opt/conda/bin/python"
264
256
257
+ # Convert3d
258
+ RUN conda install -y -n base \
259
+ -c anaconda \
260
+ -c conda-forge \
261
+ convert3d=1.3.0 \
262
+ && sync \
263
+ && conda clean -afy; sync \
264
+ && rm -rf ~/.conda ~/.cache/pip/*; sync \
265
+ && ldconfig
266
+
265
267
# Precaching atlases
266
268
COPY scripts/fetch_templates.py fetch_templates.py
267
- RUN ${CONDA_PYTHON} -m pip install --no-cache-dir templateflow && \
268
- ${CONDA_PYTHON} fetch_templates.py && \
269
+ RUN ${CONDA_PYTHON} fetch_templates.py && \
269
270
rm fetch_templates.py && \
270
271
find $HOME/.cache/templateflow -type d -exec chmod go=u {} + && \
271
272
find $HOME/.cache/templateflow -type f -exec chmod go=u {} +
0 commit comments