vep docker下使用vcf2maf

跑完全基因組前面的pipline,拿到了vcf文件
根據(jù)指示把vcf轉(zhuǎn)化為maf,進一步畫圖統(tǒng)計,使用vcf2maf

vcf2maf的git地址為:

GitHub - mskcc/vcf2maf: Convert a VCF into a MAF, where each variant is annotated to only one of all possible gene isoforms

但是第一次跑這個軟件的時候報錯了,說他沒有啥vep的數(shù)據(jù)
看來是依賴這個工具
然后我只能進一步裝這個vep工具
但是!
這個工具是perl寫的,需要配置很多perl的環(huán)境
我實在是沒有配置出來,耗費很多時間
最后!
使用vep的docker!
vep的安裝方法主要有三:
1 傳統(tǒng)安裝
詳情見官網(wǎng):https://asia.ensembl.org/info/docs/tools/vep/script/vep_download.html#docker

image.png

簡單來說就是把文件下載下來,然后運行INSTAL.pl
但是報錯主要因為環(huán)境配置問題,以及運行的過程中會下載一些東西,網(wǎng)速問題
參考網(wǎng)址生信技能樹:http://www.360doc.com/content/21/0714/12/76149697_986499871.shtml

  1. conda安裝
    在vcf2maf的git中推薦了這種方法:https://github.com/mskcc/vcf2maf
    安裝的git:https://gist.github.com/ckandoth/61c65ba96b011f286220fa4832ad2bc0
    但是不知道為啥我的conda默認安裝89的,然后升級也不行,卸載也不行
    所以我就放棄了

3.使用docker
在vep的docker環(huán)境下運行vcf2maf
在這個環(huán)境中需要安裝vcf2maf以及conda,samtools
參考:https://asia.ensembl.org/info/docs/tools/vep/script/vep_download.html#docker

首先pull鏡像

docker pull ensemblorg/ensembl-vep

新建一個文件夾

mkdir /anypalce/.vep

因為vep需要配置文件,使用vep下載,但是很慢,數(shù)據(jù)大約有20多G,很難下載下來,推薦自己下載再上傳到/.vep中
這里我使用的別人下載好的vep data

image.png

image.png

配置文件的下載參考:http://www.itdecent.cn/p/66aa40bff960
下載的地址:http://ftp.ensembl.org/pub/
選中自己vep的版本,然后按照參考網(wǎng)址中的方法配置文件
官方給的下載配置文件的網(wǎng)址:
https://asia.ensembl.org/info/docs/tools/vep/script/vep_cache.html
配置文件主要是下載caches以及fasta

image.png
image.png

然后新建一個docker

docker run -it --net host -v mkdir /anypalce/.vep:/opt/vep/.vep ensemblorg/ensembl-vep /bin/bash
###--net host 參數(shù) ----容器創(chuàng)建時共享主機的network namespace,即容器可以訪問主機上所有的網(wǎng)絡(luò)信息,這樣容器內(nèi)的網(wǎng)絡(luò)配置就會和主機一模一樣
### /bin/bash 可以獲得一個shell的交互頁面

這樣我們就進入docker了
安裝軟件
安裝vcf2maf參考:https://github.com/mskcc/vcf2maf

export VCF2MAF_URL=`curl -sL https://api.github.com/repos/mskcc/vcf2maf/releases | grep -m1 tarball_url | cut -d\" -f4`
curl -L -o mskcc-vcf2maf.tar.gz $VCF2MAF_URL; tar -zxf mskcc-vcf2maf.tar.gz; cd mskcc-vcf2maf-*
perl vcf2maf.pl --man
perl maf2maf.pl --man

安裝conda參考conda管理生信軟件一文就夠 (qq.com)
利用conda安裝samtools
利用conda安裝bcftools
最后,可以在docker外面把vcf文件cp到/anypalce/.vep,這樣就可以在docker中的/opt/vep/.vep 訪問這個文件

然后就可以跑vcf2maf了
vcf2maf雖然只是推薦了input以及output參數(shù),但是一定要用vcf2maf.pl --help查看參數(shù),你會發(fā)現(xiàn)很多默認參數(shù)都是有問題的,會報錯
例如

--vep-path       Folder containing variant_effect_predictor.pl [~/vep]
     --vep-data       VEP's base cache/plugin directory [~/.vep]
     --vep-forks      Number of forked processes to use when running VEP [4]
     --ref-fasta      Reference FASTA file [~/.vep/homo_sapiens/86_GRCh37/Homo_sapiens.GRCh37.75.dna.primary_assembly.fa.gz]

所以你需要檢查ref_data的位置,vep的以及vep_data的位置等等。以及--ncbi-build默認是GRCh37,需要按需求修改

報錯經(jīng)驗##注意:
還需要檢查vep_data里面的數(shù)據(jù)的權(quán)限
使用chmod a+rwx添加文件夾以及所有文件的權(quán)限
這里的ref_data的fasta如果是壓縮的文件,必須是bgzip壓縮

參數(shù)詳解:
參考: https://www.likecs.com/show-203709633.html

image.png

后續(xù)跑vcf2maf的時候也有報錯,但是至少vep環(huán)境配置得七七八八,不用再考慮perl的一些library的問題

另一個和docker很像的東西,也是配置好了環(huán)境:https://www.ensembl.info/2021/05/24/cool-stuff-the-vep-can-do-singularity/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容