...
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
Bootstrap: docker
From: condaforge/miniforge3
%post
conda create -n data_stack python=3.10 -y
. /opt/conda/bin/activate
conda activate data_stack
pip3 install numpy scipy pandas matplotlib ipython
%environment
export PS1='(data_stack) Apptainer> '
export PATH='/opt/conda/envs/data_stack/bin:/opt/conda/condabin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/ usr/bin:/sbin:/bin'
export CONDA_PREFIX='/opt/conda/envs/data_stack'
export CONDA_SHLVL='1'
export CONDA_DEFAULT_ENV='data_stack'
export CONDA_PROMPT_MODIFIER='(data_stack) '
export CONDA_EXE='/opt/conda/bin/conda'
export _CE_M=''
export _CE_CONDA=''
export CONDA_PYTHON_EXE='/opt/conda/bin/python'
%runscript
exec python3 $@ |
Izgradnja na Supeku
U slučaju da niste u mogućnosti izgraditi kontejner na svojem osobnom računalu, pružamo mogućnost izgradnje kontejnera na pristupnom poslužitelju login-gpu.hpc.srce.hr
Pri izgradnji, treba pripaziti na sljedeće:
- graditi u direktoriju
/scratch
, koji nije dio Lustre dijeljenog datotečnog sustava - prebaciti kreirani image nazad u vaš korisnički direktorij, jer u protivnom neće biti vidljiv izvan pristupnog čvora
login-gpu.hpc.srce.hr
- nakon izgradnje obrisati sve kreirane datoteke
- pri sandbox izgradnji koristiti opciju fakeroot (jer korisnici nemaju sudo ovlasti)
Primjer izgradnje ubuntu v20.04 imagea s dodatnim knjižnicama:
Code Block |
---|
|
# login na pristupni poslužitelj gpu
[korisnik@kompjuter ~]$ ssh korisnik@login-gpu.hpc.srce.hr
Last login: Wed May 24 09:23:06 2023 from x.x.x.x
# pomicanje u /scratch i kreiranje direktorija za izgradnju
[korisnik@x3000c0s27b0n0 ~]$ cd /scratch
[korisnik@x3000c0s27b0n0 scratch]$ mkdir ${USER}-apptainer
[korisnik@x3000c0s27b0n0 scratch]$ cd ${USER}-apptainer
# izgradnja sandbox verzije
[korisnik@x3000c0s27b0n0 korisnik-apptainer]$ apptainer build ubuntu_20.04_sandbox docker://ubuntu:20.04
[korisnik@x3000c0s27b0n0 korisnik-apptainer]$ apptainer shell --writable --fakeroot ubuntu_20.04_sandbox
Apptainer> ...
Apptainer> ... dodatne komande za izgradnju kontejnera ...
Apptainer> ...
Apptainer> exit
# mijenjanje sanboxa u image, prebacivanje u korisnički i
[korisnik@x3000c0s27b0n0 korisnik-apptainer]$ apptainer build ubuntu_20.04.sif ubuntu_20.04_sandbox
[korisnik@x3000c0s27b0n0 korisnik-apptainer]$ mv ubuntu_20.04.sif ~
[korisnik@x3000c0s27b0n0 korisnik-apptainer]$ cd ~
# brisanje direktorija za izgradnju
[korisnik@x3000c0s27b0n0 korisnik-apptainer]$ rm -rf /scratch/${USER}-apptainer |
Kako dalje?
...