sifファイル
BootStrap: docker
From: nvcr.io/nvidia/cuda:12.6.3-base-ubuntu24.04
%setup
setup_dir="${SINGULARITY_ROOTFS}/usr/local/python_env"
mkdir -p "${setup_dir}"
cp "./requirements.txt" "${setup_dir}/requirements.txt"
%post
export DEBIAN_FRONTEND=noninteractive
export TZ=Asia/Tokyo
apt update && \
apt install -y \
tzdata \
locales \
curl \
git \
tk-dev \
htop \
language-pack-ja \
libhdf5-serial-dev \
python3 \
python3-pip \
python3-venv
# Setup locale
localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
export python_env_dir="/usr/local/python_env"
export venv_dir="${python_env_dir}/.venv"
cd "${python_env_dir}"
python3 -m venv "${venv_dir}"
. "${venv_dir}/bin/activate"
pip install -r "${python_env_dir}/requirements.txt"
# Clean up
apt clean
rm -rf /var/lib/apt/lists/*
%runscript
#!/bin/bash
set -euo pipefail
source /usr/local/python_env/.venv/bin/activate
exec "$@"
%environment
export LANG=en_US.utf8
export DEBIAN_FRONTEND=noninteractive
export TZ=Asia/Tokyo
実行
$ singularity run python_env.sif python3