Skip to content

singularity/apptainer documentation instructions #106

Description

@ckronlage

When running meld-graph via singularity/apptainer, I would suggest to add the flags --cleanenv --containall to disable automatic configuration of host environment variable and mounting of the home dir ~

Without, I had a case where the conda environment inside the container would run into conflicts with that of the host system, causing errors like this:

ckronlage@luna:/p/epilepsy/epi_lesion_detection/meld_graph> apptainer exec meld_graph.sif /bin/bash -c "cd /app && source \$FREESURFER_HOME/FreeSurferEnv.sh && python scripts/new_patient_pipeline/new_pt_pipeline.py -id sub-00001"
Setting MELD_DATA_PATH to /data
Setting BASE_PATH to /data/output/preprocessed_surf_data
Setting EXPERIMENT_PATH to /data/models
Setting FS_SUBJECTS_PATH to /data/output/fs_outputs
Setting BASE_PATH to /data/meld_params
Traceback (most recent call last):
  File "/app/scripts/new_patient_pipeline/new_pt_pipeline.py", line 8, in <module>
    from scripts.new_patient_pipeline.run_script_segmentation import run_script_segmentation
  File "/app/scripts/new_patient_pipeline/run_script_segmentation.py", line 28, in <module>
    from meld_graph.tools_pipeline import get_m, create_demographic_file, get_anat_files
  File "/app/meld_graph/tools_pipeline.py", line 6, in <module>
    import bids.layout
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/bids/__init__.py", line 2, in <module>
    from .layout import BIDSLayout, BIDSLayoutIndexer
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/bids/layout/__init__.py", line 1, in <module>
    from .layout import BIDSLayout, Query
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/bids/layout/layout.py", line 14, in <module>
    import sqlalchemy as sa
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/sqlalchemy/__init__.py", line 12, in <module>
    from . import util as _util
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/sqlalchemy/util/__init__.py", line 14, in <module>
    from ._collections import coerce_generator_arg as coerce_generator_arg
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/sqlalchemy/util/_collections.py", line 39, in <module>
    from .typing import is_non_string_iterable
  File "/opt/conda/envs/meld_graph/lib/python3.9/site-packages/sqlalchemy/util/typing.py", line 42, in <module>
    from typing_extensions import (
ImportError: cannot import name 'dataclass_transform' from 'typing_extensions' (/home/ckronlage/.local/lib/python3.9/site-packages/typing_extensions.py)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions