Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
linenumberstrue
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
languagebash
# 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? 
Anchor
reference
reference

...