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,15 +81,16 @@ 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
106
88
WORKDIR /tmp
107
89
RUN micromamba create -y -f /tmp/env.yml && \
108
90
micromamba clean -y -a
109
91
110
- ENV PATH="/opt/conda/envs/nibabies/bin:$PATH"
92
+ ENV PATH="/opt/conda/envs/nibabies/bin:$PATH" \
93
+ UV_USE_IO_URING=0
111
94
RUN npm install -g svgo@^3.2.0
[email protected] && \
112
95
rm -r ~/.npm
113
96
@@ -180,23 +163,12 @@ RUN apt-get update -qq \
180
163
&& ldconfig
181
164
182
165
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
166
186
167
# AFNI config
187
168
ENV PATH="/opt/afni-latest:$PATH" \
188
169
AFNI_IMSAVE_WARNINGS="NO" \
189
170
AFNI_PLUGINPATH="/opt/afni-latest"
190
171
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
172
# Install FreeSurfer (with Infant Module)
201
173
COPY --from=nipreps/freesurfer@sha256:3b895fc732a7080374a15c4f976510f39c0c48dc76c030ab27316febd5e419ee /opt/freesurfer /opt/freesurfer
202
174
ENV FREESURFER_HOME="/opt/freesurfer"
@@ -278,8 +250,8 @@ ARG BUILD_DATE
278
250
ARG VCS_REF
279
251
ARG VERSION
280
252
LABEL org.label-schema.build-date=$BUILD_DATE \
281
- org.label-schema.name="NiBabies " \
282
- org.label-schema.description="NiBabies - NeuroImaging tools for babies " \
253
+ org.label-schema.name="fMRIPrep Lifespan " \
254
+ org.label-schema.description="fMRIPrep Lifespan - fMRI processing tool from birth and on " \
283
255
org.label-schema.url="https://github.com/nipreps/nibabies" \
284
256
org.label-schema.vcs-ref=$VCS_REF \
285
257
org.label-schema.vcs-url="https://github.com/nipreps/nibabies" \
0 commit comments