26
26
ARG BASE_IMAGE=ubuntu:jammy-20240405
27
27
28
28
# NiBabies wheel
29
- FROM python:slim AS src
30
- RUN pip install build
31
- RUN apt-get update && \
32
- apt-get install -y --no-install-recommends git
29
+ FROM ghcr.io/astral-sh/uv:python3.12-alpine AS src
30
+ RUN apk add git
33
31
COPY . /src
34
- RUN python -m build /src
32
+ RUN uvx --from build pyproject-build --installer uv -w /src
35
33
36
34
# Older Python to support legacy MCRIBS
37
35
FROM python:3.6.15-slim as pyenv
@@ -54,7 +52,7 @@ FROM downloader as afni
54
52
# The download link can point to newer releases
55
53
# As a safeguard, take advantage of Docker caching, and
56
54
# Bump the date to current to update AFNI
57
- RUN echo "2023 .06.09 "
55
+ RUN echo "2025 .06.12 "
58
56
RUN mkdir -p /opt/afni-latest \
59
57
&& curl -fsSL --retry 5 https://afni.nimh.nih.gov/pub/dist/tgz/linux_openmp_64.tgz \
60
58
| tar -xz -C /opt/afni-latest --strip-components 1 \
@@ -72,22 +70,6 @@ RUN mkdir -p /opt/afni-latest \
72
70
-name "3dAutomask" -or \
73
71
-name "3dvolreg" \) -delete
74
72
75
- # ANTs 2.5.4
76
- FROM downloader as ants
77
- RUN mkdir -p /opt && \
78
- curl -sSLO "https://github.com/ANTsX/ANTs/releases/download/v2.5.4/ants-2.5.4-ubuntu-22.04-X64-gcc.zip" && \
79
- unzip ants-2.5.4-ubuntu-22.04-X64-gcc.zip -d /opt && \
80
- rm ants-2.5.4-ubuntu-22.04-X64-gcc.zip
81
-
82
- # Connectome Workbench 1.5.0
83
- FROM downloader as workbench
84
- RUN mkdir /opt/workbench && \
85
- curl -sSLO https://www.humanconnectome.org/storage/app/media/workbench/workbench-linux64-v1.5.0.zip && \
86
- unzip workbench-linux64-v1.5.0.zip -d /opt && \
87
- rm workbench-linux64-v1.5.0.zip && \
88
- rm -rf /opt/workbench/libs_linux64_software_opengl /opt/workbench/plugins_linux64 && \
89
- strip --remove-section=.note.ABI-tag /opt/workbench/libs_linux64/libQt5Core.so.5
90
-
91
73
# Micromamba
92
74
FROM downloader as micromamba
93
75
@@ -99,7 +81,7 @@ RUN apt-get update && \
99
81
100
82
WORKDIR /
101
83
# Bump the date to current to force update micromamba
102
- RUN echo "2024.04.25 " && curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
84
+ RUN echo "2025.06.12 " && curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
103
85
ENV MAMBA_ROOT_PREFIX="/opt/conda"
104
86
COPY env.yml /tmp/env.yml
105
87
COPY requirements.txt /tmp/requirements.txt
@@ -180,23 +162,12 @@ RUN apt-get update -qq \
180
162
&& ldconfig
181
163
182
164
COPY --from=afni /opt/afni-latest /opt/afni-latest
183
- COPY --from=ants /opt/ants-2.5.4 /opt/ants
184
- COPY --from=workbench /opt/workbench /opt/workbench
185
165
186
166
# AFNI config
187
167
ENV PATH="/opt/afni-latest:$PATH" \
188
168
AFNI_IMSAVE_WARNINGS="NO" \
189
169
AFNI_PLUGINPATH="/opt/afni-latest"
190
170
191
- # ANTs config
192
- ENV ANTSPATH="/opt/ants" \
193
- PATH="/opt/ants/bin:$PATH" \
194
- LD_LIBRARY_PATH="/opt/ants/lib:$LD_LIBRARY_PATH"
195
-
196
- # Workbench config
197
- ENV PATH="/opt/workbench/bin_linux64:$PATH" \
198
- LD_LIBRARY_PATH="/opt/workbench/lib_linux64:$LD_LIBRARY_PATH"
199
-
200
171
# Install FreeSurfer (with Infant Module)
201
172
COPY --from=nipreps/freesurfer@sha256:3b895fc732a7080374a15c4f976510f39c0c48dc76c030ab27316febd5e419ee /opt/freesurfer /opt/freesurfer
202
173
ENV FREESURFER_HOME="/opt/freesurfer"
@@ -278,8 +249,8 @@ ARG BUILD_DATE
278
249
ARG VCS_REF
279
250
ARG VERSION
280
251
LABEL org.label-schema.build-date=$BUILD_DATE \
281
- org.label-schema.name="NiBabies " \
282
- org.label-schema.description="NiBabies - NeuroImaging tools for babies " \
252
+ org.label-schema.name="fMRIPrep Lifespan " \
253
+ org.label-schema.description="fMRIPrep Lifespan - fMRI processing tool from birth and on " \
283
254
org.label-schema.url="https://github.com/nipreps/nibabies" \
284
255
org.label-schema.vcs-ref=$VCS_REF \
285
256
org.label-schema.vcs-url="https://github.com/nipreps/nibabies" \
0 commit comments