服务器部署docker+fuannotate完成基因组注释
docker部署:https://blog.csdn.net/baidu_36511315/article/details/108117826#222_Ubuntu_84
docker可用镜像链接:https://mixuying.com/archives//1719753069678
docker常用命令:https://github.com/LynnHg/awsome-fe/blob/main/mds/docker/Docker%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4.md
funannotate安装:https://funannotate.readthedocs.io/en/latest/install.html
linux部署docker
$ sudo apt-get remove docker docker-engine docker.io containerd runc
$ sudo apt-get update
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
# 1. 默认使用国外源,非常非常非常慢!
$ sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 2. 推荐使用国内源,顺畅!
$ sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 1. 默认使用国外源,非常非常非常慢!
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 2. 推荐使用国内源,顺畅!
$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 更新apt包索引
$ sudo apt-get update
# 安装docker
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo systemctl enable docker
sudo systemctl start docker
替换代理
到这基本上docker就装好了,输入docker回车能看到帮助文档。但是docker的镜像源抓取会出现问题,导致抓取不下来,可以使用国内镜像。修改文件 /etc/docker/daemon.json(如果不存在则创建)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["请替换为您自己的代理服务ip或者域名"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
可选镜像源
https://dockerpull.com
https://docker.1panel.live
https://dockerproxy.cn
https://docker.hpcloud.cloud
查看是否换源成功
docker info
到这基本上就可以正常拉取需要的镜像了
通过docker拉取funannotate镜像
# download/pull the image from docker hub
$ docker pull nextgenusfs/funannotate
# download bash wrapper script (optional)
$ wget -O funannotate-docker https://raw.githubusercontent.com/nextgenusfs/funannotate/master/funannotate-docker
# might need to make this executable on your system
$ chmod +x /path/to/funannotate-docker
# assuming it is in your PATH, now you can run this script as if it were the funannotate executable script
$ funannotate-docker test -t predict --cpus 12
funannotate-docker使用
funannotate-docker这个脚本内部完成了docker的加载,正常使用命令如下
屏蔽重复
sudo ~/funannotate-docker mask -i /path/to/data/genome.fa --cpus 48 -o /path/to/output/genome.masked.fa
基于转录组数据预测基因
sudo ~/funannotate-docker train -i /path/to/data/genome.masked.fa \
--left /path/to/data/*.R1.clean.fq.gz \
--right /path/to/data/*.R2.clean.fq.gz \
--species "species name" \
--cpus 48 \
--max_intronlen 100000 \
-o genome-annotation
从头训练模型预测基因
sudo ~/funannotate-docker predict -i /path/to/data/genome.masked.fa \
-o BB-annotation \
-s "species name" \
--cpus 48 \
--name Mba \
--busco_db embryophyta \
--max_intronlen 100000 \
--genemark_mode ET \
--organism other \
--repeats2evm
更新基因预测结果
sudo ~/funannotate-docker update -i genome-annotation --cpus 48 --species "species name"
更新基因功能注释
sudo ~/funannotate-docker iprscan -i genoem-annotation -m local --cpus 48