Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

Biocondan pakettien asentaminen Tykyn avulla

Bioconda on suosittu Conda-kanava bioinformatiikkaohjelmistoille. Se tarjoaa helpon tavan asentaa tuhansia biolääketieteelliseen tutkimukseen liittyviä ohjelmistopaketteja.

CSC on poistanut käytöstä Conda-asennusten suoran käytön supertietokoneiden (Puhti ja Mahti) jaetuissa tiedostojärjestelmissä suorituskykyongelmien vuoksi, mutta voit helposti asentaa paketteja Biocondasta käyttämällä sen sijaan Tykky-työkalua.

Kaikille Biocondan paketeille on saatavilla valmis Docker-konttikuvapaketti. Vaikka näitä kuvia voisi hakea ja käyttää suoraan, Tykky tarjoaa helpon tavan asentaa ne niin, että niitä voi käyttää ilman erityisiä konttikomentoja.

Esimerkki: MetaBAT2:n asentaminen Biocondasta

Tässä esimerkissä asennamme MetaBAT2-paketin Biocondasta. Löytääksesi ohjelmiston Biocondasta voit selata niitä aakkosjärjestyksessä tai käyttää hakua. Tässä esimerkissä valitsemme MetaBAT2-paketin.

Etsi sivulta Dockerin käyttöön tarkoitettu komento. Tässä tapauksessa:

docker pull quay.io/biocontainers/metabat2:<tag>

Komennosta tarvitsemme Docker-osoitteen:

quay.io/biocontainers/metabat2

Tarvitsemme myös tunnisteen sille versiolle, jonka haluamme asentaa. Avaa yllä oleva osoite selaimessa:

https://quay.io/biocontainers/metabat2

Valitse Tags-sivulta haluttu versio. Tässä tapauksessa valitsemme uusimman (ylimpänä olevan) version:

2.17--h6f16272_1

Yhdistä osoite ja tunniste Docker-URL-osoitteeksi:

docker://quay.io/biocontainers/metabat2:2.17--h6f16272_1

Lataa Tykky-moduuli:

module load tykky

Käytämme Tykyn wrap-container-komentoa.

-w-parametria tarvitaan määrittämään asennushakemisto kontin sisällä. Biocondan konteissa tämä on aina /usr/local/bin. Muiden lähteiden konteille katso lisätietoja alta.

--prefix-parametri ilmaisee hakemiston, johon haluamme asentaa ympäristön jaettuun tiedostojärjestelmään (kontin ulkopuolelle). Hakemiston täytyy olla olemassa, joten meidän on luotava se ensin. Esimerkiksi:

mkdir -p /projappl/project_2001234/metabat-2.17

Voimme nyt asentaa ohjelmiston komennolla:

wrap-container -w /usr/local/bin docker://quay.io/biocontainers/metabat2:2.17--h6f16272_1 --prefix /projappl/project_2001234/metabat-2.17

Kun asennus on valmis, ohjelman suoritettavat tiedostot ovat hakemistossa metabat-2.17/bin. On hyvä huomata, että nämä eivät ole varsinaisia komentoja, vaan kontin sisäisten komentojen wrapper-skriptejä. Voit kuitenkin käyttää niitä aivan kuin ne olisivat varsinaisia komentoja. Esimerkiksi:

/projappl/project_2001234/metabat-2.17/bin/metabat --help

bin-hakemiston lisääminen $PATH-muuttujaasi toimii samalla tavalla kuin Conda-ympäristön aktivointi suorassa Conda-asennuksessa. Kun wrap-container- komento päättyy, se näyttää sinulle export-komennon tätä varten. Varsinainen komento riippuu asennushakemistosta, mutta on suunnilleen seuraavanlainen:

export PATH="/projappl/project_2001234/metabat-2.17/bin:$PATH"

Tämän jälkeen voit yksinkertaisesti tehdä näin:

metabat --help

Note

On yleensä huono ajatus lisätä Tykky-asennuksia pysyvästi $PATH-muuttujaasi esimerkiksi muokkaamalla .bashrc-tiedostoasi. Asennushakemistot sisältävät usein yleisiä komentoja kuten python tai perl. Nämä ovat asennuskohtaisia, ja niiden pitäminen oletusarvoisessa $PATH-muuttujassasi aiheuttaa ongelmia muun ohjelmiston ajamisessa. On parasta lisätä asennushakemisto $PATH-muuttujaasi vain silloin, kun käytät ohjelmaa. Voit esimerkiksi lisätä export-komennon eräajon komentotiedostoosi.

Kontit muista lähteistä

Voit käyttää samankaltaisia vaiheita luodaksesi wrapperit myös muiden lähteiden konteille, kuten BioContainer-rekisteristä tai paikallisista kuvatiedostoista. Ohjelmiston asennussijainti kontin sisällä voi vaihdella, joten se kannattaa tarkistaa, jotta -w-parametri voidaan asettaa oikein. Tässä esimerkissä käytämme mono-konttia.

Rakenna ensin paikallinen konttikuva:

apptainer build mono.sif docker://mono:6.12.0.182-slim

Voit nyt suorittaa which-komennon kontin sisällä selvittääksesi asennussijainnin.

apptainer exec mono.sif which mono

Tässä tapauksessa hakemisto on /usr/bin. Asennuksessa voit käyttää yllä olevaa Docker-osoitetta tai määrittää juuri luodun paikallisen kuvatiedoston (mono.sif).

wrap-container -w /usr/bin mono.sif --prefix mono

Joissakin tapauksissa asennussijainti ei ole kontin sisällä $PATH-muuttujassa, joten which ei toimi. Näissä tapauksissa voit kokeilla suorittaa sen sijaan find-komennon kontin sisällä:

apptainer exec mono.sif find / \( -type f -o -type l \) -name mono 2> /dev/null

Tässä tapauksessa haemme juurihakemistosta (/) alkaen joko tiedostoa (-type f) tai (-o) symbolista linkkiä (-type l), jonka nimi on mono (-name mono).

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta