JohannesWiesner / csp_docker

A repository for creating Docker and Singularity files using Neurodocker
0 stars 1 forks source link

Newer linux distros do not include the multiarch-support package anymore #32

Open JohannesWiesner opened 1 year ago

JohannesWiesner commented 1 year ago

We would like to switch to a more recent base image, but recent Linux distros do not include the multi arch-support package any longer. The error can be reproduced with:

generate_docker() {
    docker run -i --rm repronim/neurodocker:0.9.4 generate docker \
        --base-image ubuntu:22.04 \
        --pkg-manager apt \
        --install opts="--quiet" \
            gcc \
            g++ \
            octave \
        --spm12 version=r7771 \
        --freesurfer version=7.1.1 \
        --copy $conda_yml_file /tmp/ \
        --miniconda \
            version=latest \
            yaml_file=/tmp/$conda_yml_file \
            env_name=csp \
        --run 'mkdir /code && chmod 777 /code && chmod a+s /code' \
        --run 'mkdir /data && chmod 777 /data && chmod a+s /data' \
        --run 'mkdir /output && chmod 777 /output && chmod a+s /output' \
        --run 'mkdir ~root/.jupyter' \
        --run 'echo c.NotebookApp.ip = \"0.0.0.0\" > ~root/.jupyter/jupyter_notebook_config.py' \
        --run 'echo c.NotebookApp.allow_root=True >> ~root/.jupyter/jupyter_notebook_config.py' \
        --run 'echo source activate csp >> ~root/.bashrc' \
        --workdir '/code'
}

I systematically tried with less and less recent versions of neurodebian. Fails with:

1.) neurodebian:bookworm 2.) neurodebian:bullseye

From neurodebian:buster on the error disappears which is documented here: https://packages.debian.org/search?lang=en&keywords=multiarch-support. However with buster we get:

No Java Runtime Environment(JRE) was found on this system.

when downloading the MATLAB-Compiler.

This issue is basically a duplicate of:

https://github.com/ReproNim/neurodocker/issues/419