轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
phytopipe

healthyplant/phytopipe

healthyplant

PhytoPipe is a Phytosanitary Pipeline for plant pathogen detection and diagnosis

下载次数: 0状态:社区镜像维护者:healthyplant仓库类型:镜像最近更新:4 个月前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

镜像简介
下载命令
镜像标签列表与下载命令
轩辕镜像,快一点,稳很多。
点击查看

PhytoPipe Docker

This repository is designed to show examples of ways in which you can utilize the Docker images that come prepackaged with https://github.com/healthyPlant/PhytoPipe based on Ubuntu 20.04.

Bioinformatics tools in the image

ToolVersion
Python3v3.8.10
Javaopenjdk 11.0.17 2022-10-18
BBtoolsv39.19
FastQCv0.12.1
Trimmomaticv0.39
QUASTv5.2.0
snakemakev7.18.0
SPAdesv4.1.0
multiqcv1.12
Kraken2v2.17.1
Kaijuv1.10.1
MUMmer4v4.0.0rc1
Blastv2.17.0+
Diamondv2.1.11
BWAv0.7.17-r1188
Bowtie2v2.5.4
bcftoolsv1.21
samtoolsv1.21
bedtoolsv2.31.0
Seqtkv1.3-r106
Trinityv2.15.1
KronaToolsv2.8.1
Entrez Directv18.9

Examples to use the image (Linux/Mac)

1. use the interactive bash

shell
workDir=/my/work/directory
docker run -it --rm -v $workDir:/data healthyplant/phytopipe /bin/bash
#/data is a directory in the docker container and links to your local workDir (/my/work/directory) through the parameter "-v". You can run any Linux commands in the docker bash, for example list all files in /my/work/directory, and output results to /data folder.
ls -al /data

You can build databases following commands in https://github.com/healthyPlant/PhytoPipe/wiki.

shell
#for example, build nr Diamond database
mkdir -p /data/phytopipe_db/ncbi
cd /data/phytopipe_db/ncbi
wget ftp://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/nr.gz
diamond makedb --in nr.gz -d nr
ls -ltr

#build Krona database
updateTaxonomy.sh
updateAccessions.sh
#now the databases are in the Krona folder /opt/KronaTools-2.8.1/taxonomy/ 
ls /opt/KronaTools-2.8.1/taxonomy/
#copy Krona databases to the local folder
mkdir -p /data/phytopipe_db/Krona_db
cp /opt/KronaTools-2.8.1/taxonomy/*  /data/phytopipe_db/Krona_db/
ls -al /data/phytopipe_db/Krona_db/

You can see the file nr.dmnd in the local folder /my/work/directory/phytopipe_db/ncbi, and the files all.accession2taxid.sorted and taxonomy.tab in the local folder /my/work/directory/phytopipe_db/Krona_db.

When you use the databases on the local folder, please use "-v" to setup the links in your docker command

-v /my/work/directory/phytopipe_db/ncbi:/opt/phytopipe/db/ncbi
-v /my/work/directory/phytopipe_db/Krona_db:/opt/KronaTools-2.8.1/taxonomy

2. Use the docker container as a second system

You can run the interactive bash in a docker container. Every time you start this docker container, your previous works (for example, installed tools) are still there. Here are some steps to use our phytopipe docker image.

i). create a phytopipe docker container

Using -v parameter to link the local folder to the container, - v /my/work/directory:/data, /data is a folder name in the container for the local folder /my/work/directory. Work on the folder /data in the container and view files in the local folder /my/work/directory.

workDir=/my/work/directory  #local folder
docker run -it -v $workDir:/data healthyplant/phytopipe /bin/bash 
#do something
touch testmycontainer
exit 

ii). find your docker container id

docker ps -a

Suppose your "CONTAINER ID" is a2b0f6be4c72

iii). start your docker container

docker start a2b0f6be4c72
docker exec -it a2b0f6be4c72 /bin/bash

iv). work on the docker container

ls -al testmycontainer
#You should see your previous work (testmycontainer)
cd /data
touch test
#please work on /data folder in the container. So you can access all your works on your local folder /my/work/directory. 
#You should see the file "test" in your local folder /my/work/directory.

Starting here, you can build databases and run PhytoPipe in this container following https://github.com/healthyPlant/PhytoPipe/wiki. PhytoPipe and other tools are installed in the /opt folder. You can find the tool commands in their installed directory under the folder /opt. For example, you can build small Kraken2 (e.g. virus only) database following the below commands,

shell
# Download taxonomy
DBNAME=/data/kraken_db_reduced
kraken2-build --download-taxonomy --db $DBNAME
# Collect plant and virus taxon id you need
get_species_taxids.sh -t 10239 > viral_taxIDs.txt
get_species_taxids.sh -t 33090 > plant_taxIDs.txt

# Extract sequences from NCBI blast nt database
nt_db=/data/ncbi_nt/nt  #suppose your NCBI nt blast database is in $workDir/ncbi_nt(/my/work/directory/ncbi_nt) 
blastdbcmd -db $nt_db -dbtype nucl -taxidlist viral_taxIDs -outfmt ">%a|kraken:taxid|%T %t#X#%s" | sed 's/#X#/\n/g' > viral.fasta
blastdbcmd -db $nt_db -dbtype nucl -taxidlist plant_taxIDs -outfmt ">%a|kraken:taxid|%T %t#X#%s" | sed 's/#X#/\n/g' > plant.fasta

# Add sequences to library
kraken2-build --add-to-library viral.fasta --db $DBNAME
kraken2-build --add-to-library plant.fasta --db $DBNAME

# Clean files
rm plant.fasta
rm viral.fasta
rm *_taxIDs.txt

# Build the database
kraken2-build --build --threads 16 --db $DBNAME

After successfully running, you should see the Kraken2 database fiels (*.k2d) in the folder /my/work/directory/kraken_db_reduced.

v). run PhytoPipe on the docker container

Before running PhytoPipe, please put your fastq files in /my/work/directory/phytopipe_run/raw (do not change 'raw', which is the default fastq file folder name PhytoPipe use ). After you modify /opt/phytopipe/config.yaml, you can run PhytoPipe using the following commands

shell
#dry run
snakemake  --configfile /opt/phytopipe/config.yaml -s /opt/phytopipe/Snakefile --config workDir=/data/phytopipe_run --cores 32 -n
#if dry run success, please run
snakemake  --configfile /opt/phytopipe/config.yaml -s /opt/phytopipe/Snakefile --config workDir=/data/phytopipe_run --cores 32 

After successfully running, you should see the report in the folder /my/work/directory/phytopipe_run.

3. Directly run a command in the image

This is example to run KronaTools to generate a Krona pie chart.

shell
docker run --rm -v /my/work/directory/phytopipe_db/Krona_db:/opt/KronaTools-2.8.1/taxonomy -v /my/work/directory/phytopipe_run/Dataset1:/data healthyplant/phytopipe ktImportTaxonomy -m 3 -t 5 -o /data/Dataset1.kraken2.krona.html /data/Dataset1.kraken2.report.txt

"-v /my/work/directory/phytopipe_db/Krona_db:/opt/KronaTools-2.8.1/taxonomy" builds a bridge between the local folder /my/work/directory/phytopipe_db/Krona_db and the folder /opt/KronaTools-2.8.1/taxonomy in the image. Any files in the local folder can be accessed by the docker container. Doing this allows that the Krona taxonomy database in the local machine can be used by the docker.

"-v /my/work/directory/phytopipe_run/Dataset1:/data" links your local work directory (Dataset1) to the folder /data in the docker container.

"healthyplant/phytopipe" is the docker image name.

"ktImportTaxonomy" is the command to run.

" -m 3 -t 5 " is the parameters for the command.

"-o /data/Dataset1.kraken2.krona.html" is the output. It is in the folder /data in the docker. But you can see it in your local work directory because of the bridge we built.

"/data/Dataset1.kraken2.report.txt" is the input from Kraken2 classification. The file "Dataset1.kraken2.report.txt" is in the local work directory /my/work/directory/phytopipe_run/Dataset1 .

If you want Docker run in the background, please use "-d or --detach" parameter. The Linux command "nohup" can't be used in Docker. "-d" is an option for Docker. For example, build Kraken2 and Kaiju databases

shell
#build Kraken2 database
docker run --rm -v /my/work/directory/phytopipe_db:/data healthyplant/phytopipe kraken2-build --download-taxonomy --threads 16 --db /data/kraken_db
docker run --rm -v /my/work/directory/phytopipe_db:/data healthyplant/phytopipe kraken2-build --download-library nt --db /data/kraken_db
docker run -d --rm -v /my/work/directory/phytopipe_db:/data healthyplant/phytopipe kraken2-build --build --threads 16 --db /data/kraken_db

#build Kaiju database
docker run -d --rm -v /my/work/directory/phytopipe_db/kaiju_db:/data healthyplant/phytopipe kaiju-makedb -s nr_euk

After one to two days running, the Kraken2 database files (.k2d) should be in your local folder/my/work/directory/phytopipe_db/kraken_db. The Kaiju database file (.fmi) should be in your local folder /my/work/directory/phytopipe_db/kaiju_db.
If you're just interested in viruses, you can build virus Kraken2 and Kaiju databases or download pre-built databases from https://benlangmead.github.io/aws-indexes/k2 and the Kaiju server. Here is the command for building Kaiju RVDB viral database.

shell
docker run -d --rm -v /my/work/directory/phytopipe_db/kaiju_db:/data healthyplant/phytopipe kaiju-makedb -s rvdb 

4. Run PhytoPipe

i). Build/update databases

You can use our script updateDatabaseDocker.sh to build or update all databases. Kraken2 database building will take several days.

shell
docker run -d --rm -v /my/work/directory/phytopipe_db:/data healthyplant/phytopipe bash /opt/phytopipe/scripts/updateDatabaseDocker.sh /opt/phytopipe /data v25.0

v25.0 is RVDB version from RVDB database, protein version. Please find the newest version when you update the database.
If you have problems to build the Kraken2 database, you can download https://benlangmead.github.io/aws-indexes/k2. If so, please kill the above process after one day running.

After database building finished, you will see several folders in the folder /my/work/directory/phytopipe_db.

  1. kraken2 database
    Folder: /my/work/directory/phytopipe_db/kraken_db
    Files: hash.k2d opts.k2d seqid2taxid.map taxo.k2d
  2. kaiju database
    Folder: /my/work/directory/phytopipe_db/kaiju_db
    Files: kaiju_db_nr_euk.fmi, names.dmp, nodes.dmp
  3. NCBI blastn nt database downloaded from NCBI
    Folder: /my/work/directory/phytopipe_db/ncbi_nt
    Files: nt*
  4. SILVA 18S and 28S Eukaryote ribosomal RNA database
    Folder: /my/work/directory/phytopipe_db/rRNA
    Files: silva-euk_com***ed_rRNA.fasta
  5. Reference blastn and diamond blastx database
    Folder: /my/work/directory/phytopipe_db/ncbi
    Files: nr.dmnd, refseq_viral_genomic.fa, plantvirus.fa, rvdb.dmnd, microbial.tids
  6. NCBI taxonomy database
    Folder: /my/work/directory/phytopipe_db/ncbi/taxonomy
    Files: refseq_viral.gb_taxon.txt, rvdb.gb_taxon.txt,plantvirus.gb_taxon.txt, nodes.dmp, names.dmp
  7. Krona taxonomy database
    Folder: /my/work/directory/phytopipe_db/Krona_db
    Files: all.accession2taxid.sorted, taxonomy.tab

ii). Create your config.yaml file

You can download "config.docker.yaml" from https://github.com/healthyPlant/PhytoPipe to edit or copy the following code to edit

shell
#For single-read file
#seq_type: 'se'  #'se' for single-readd, 'pe' for paired-end  
#strand1: ''  #'' for single-read file name without R1, 'R1' for single-read file name end with R1 or R1_001
#strand2: 'R2'  # keep it even no pair R2 file

#For paired-end file
seq_type: 'pe'  #'se' for single-read, 'pe' for paired-end  
strand1: 'R1'  # for pair-end file name with R1 and R2 or R1_001 and R2_001; 1 for NCBI sequence
strand2: 'R2'   #for R2 or R2_001; 2 for NCBI sequence

input_format: 'fastq.gz'  #read file format. 'fq.gz' is an option 
number_of_threads: 16 #number of computer cores or threads

#please check wiki to see how to build the databases
#please do not change database paths here. They are the paths in the docker image. You can use "-v" to link the local databases 
#spike-in or contorl's sequence file 
control: /opt/phytopipe/db/phi-X174.fasta
#kraken2 database folder
krakenDb: /opt/phytopipe/db/kraken_db
#kaiju database file
kaijuDb: /opt/phytopipe/db/kaiju_db/kaiju_db_nr_euk.fmi
#NCBI blastn nt database downloaded from NCBI
blastnDb: /opt/phytopipe/db/ncbi_nt/nt
#NCBI nr database made by Diamond
blastxDb: /opt/phytopipe/db/ncbi/nr.dmnd
#viral reference database
blastnViralDb: /opt/phytopipe/db/ncbi/refseq_viral_genomic.fa
#blastnViralDb: /opt/phytopipe/db/ncbi/plantvirus.fa
#viral reference taxonomy onformation
blastnViralTaxonDb: /opt/phytopipe/db/ncbi/taxonomy/refseq_viral.gb_taxon.txt
#blastnViralTaxonDb: /opt/phytopipe/db/ncbi/taxonomy/plantvirus.gb_taxon.txt
#RVDB viral protein database made by Diamond
blastxViralDb: /opt/phytopipe/db/ncbi/rvdb.dmnd
#RVDB viral protein sequences taxonomy information
blastxViralTaxonDb: /opt/phytopipe/db/ncbi/taxonomy/rvdb.gb_taxon.txt
#SILVA 18S and 28S Eukaryote ribosomal RNA database
euk_rRNA: /opt/phytopipe/db/rRNA/silva-euk_combined_rRNA.fasta
#NCBI taxonomy database
taxDb: /opt/phytopipe/db/ncbi/taxonomy

#Virus acronym from ICTV
acronymDb: /opt/phytopipe/db/ICTV_virus_acronym.txt

#microbial taxon ids
microbialTaxon: /opt/phytopipe/db/ncbi/microbial.tids

#your monitored pathogens, if you don't have them, leave the file empty
#the file is a tab delimited
#column titles are:TaxonId Species
#each line have a specices taxonomy ID and name
monitorPathogen: /opt/phytopipe/db/monitorPathogen.txt

#Blast database type
#'virus' is for blasting against RVDB and viral references.
#'all' is for blasting NCBI nt and nr. It could take a long time to finish blastn
blastDbType: virus # or 'all' 
#Blast E-value cutoff 
blastEvalue: 1e-10

#reads used for assembly or mapping to a reference
#'trimmed' is for all trimmed reads including host reads
#'clean' is for all possible pathogen reads. host reads are supposed to be removed
mapReadType: 'clean' #'trimmed'

#trimmomatic, its adapters and parameters
trimmomatic: /opt/Trimmomatic-0.39/trimmomatic-0.39.jar
adapters: /opt/Trimmomatic-0.39/adapters/TruSeq3-SE.fa
trimmomatic_param: " LEADING:3 TRAILING:3 SLIDINGWINDOW:4:20 MINLEN:36 "

#de novo genome assembly tool
#'Trinity' or 'Spades'
assembler: Trinity # 'Spades'
#Spades parameters. Different kmers (k) may generate different results. 
#Spades parameters. Different kmers (k) may generate different results. 
spades_param: " " #" --only-assembler --phred-offset 33 -k 21,31,41,51,71,91,121 "

#Added in PhytoPipe.v2
#to limit blastn (>=v2.15) search in interesting taxons, such as: 2 (bacteria), 10239 (viruses), 4751 (fungi), 4762 (oomycetes)
includeTaxids: "2,10239,4751,4762"
#to exclude unwanted taxons in blastn search (>=v2.15), such as 38018 (bacteriophage),  32630 (synthetic construct), 451344 (unclassified archaeal viruses), 12333 (unclassified bacterial viruses), 552364 (unclassified virophages), 186616 (environmental samples)
excludeTaxids: "38018,32630,451344,12333,552364,186616"


#mapping tool
#'bwa' or 'bowtie'
mappingTool: bwa # 'bowtie2'
#mapping tool parameters
bwa_param: " -B 4 "  #default bwa setting #" -k 12 -A 1 -B 3 -O 1 -E 1 " #bwa loose mapping; 
bowtie2_param: " --very-sensitive-local -k 100 --score-min L,20,1.0 " #bowtie2 sensitive mapping; " --mp 20  --score-min L,-0.1,-0.1 " #bowtie2 very stringent mapping

#clumpify parameters
clumpify_param: "dedupe=t subs=0 passes=2 " #dupedist=40 optical=t # These parameters identify reads as duplicated only if they are an exact match (i.e., no substitution allowed).

#gobal variables, please do not change
#they can be changed in the command line
fastqDir: ""
flowCellDir: ""
workDir: ""
samples: ""

run_info:
  raw: raw                                #raw fastq file directoy
  log: logs                               #log files diretory
  qc: qc                                  #fastqc and multiqc directory
  trim: trimmed                           #trimmed directory
  clean: cleaned                          #clean reads after host, control ex. Phx174, duplicates removal
  assemble: assembly                      #assemble directory
  classify: classification                #read classification directory
  annotate: annotation                    #blast annotation directory  
  map: mapping                            #mapping reads directory   
  report: report                          #report directory    
  novel: novelVirus                       #novelVirus directory      

Important: If you use single-reads, please use the single-read setting and comment paired-end setting

shell
seq_type: 'se' 
strand1: ''  
strand2: 'R2'

If you use paired-end reads, please use the paired-end setting and comment single-read setting

shell
seq_type: 'pe'  
strand1: 'R1'  
strand2: 'R2' 

iii). Run PhytoPipe

Your sequence fastq.gz files are in the folder $workDir/raw. Here we use VIROMOCKchallenge https://gitlab.com/ilvo/VIROMOCKchallenge(paried-end reads) and https://gitlab.com/ilvo/VIROMOCKchallenge (single-reads, novel virus) to test the pipeline. Dataset8 is in https://github.com/healthyPlant/PhytoPipe/tree/main/test/data. All VIROMOCKchallenge datasets can be downloaded from DRYAD.

shell
workDir=/home/myname/Dataset8   #fastq.gz files are in /home/myname/Dataset8/raw
config=/home/myname/Dataset8/config.docker.yaml

#for Dataset10
#workDir=/home/myname/Dataset10    #fastq.gz files are in /home/myname/Dataset10/raw
#config=/home/myname/Dataset10/config.docker.yaml

#fastq file must be in $workDir/raw folder
ls -al $workDir/raw

#get your local databases
#kraken2 database folder
krakenDb_dir=/my/work/directory/phytopipe_db/kraken_db #hash.k2d  opts.k2d  seqid2taxid.map  taxo.k2d 
#kaiju database file
kaijuDb_dir=/my/work/directory/phytopipe_db/kaiju_db  #/kaiju_db_nr_euk.fmi
#NCBI blastn nt database downloaded from NCBI
ncbi_nt_dir=/my/work/directory/phytopipe_db/ncbi_nt  #/nt
#SILVA 18S and 28S Eukaryote ribosomal RNA database
euk_rRNA_dir=/my/work/directory/phytopipe_db/rRNA #/silva-euk_combined_rRNA.fasta
#NCBI db
ncbiDb_dir=/my/work/directory/phytopipe_db/ncbi #nr.dmnd refseq_viral_genomic.fa  rvdb.dmnd microbial.tids 
#NCBI taxonomy database
taxDb_dir=/my/work/directory/phytopipe_db/ncbi/taxonomy  #refseq_viral.gb_taxon.txt rvdb.gb_taxon.txt nodes.dmp names.dmp
#Krona taxonomy
kronaTaxDb_dir=/my/work/directory/phytopipe_db/krona_db  #all.accession2taxid.sorted taxonomy.tab


#dry run PhytoPipe on docker
docker run -it --rm --name phytopipe \
           -v $workDir:/data \
           -v $krakenDb_dir:/opt/phytopipe/db/kraken_db \
           -v $kaijuDb_dir:/opt/phytopipe/db/kaiju_db \
           -v $ncbi_nt_dir:/opt/phytopipe/db/ncbi_nt \
           -v $euk_rRNA_dir:/opt/phytopipe/db/rRNA \
           -v $ncbiDb_dir:/opt/phytopipe/db/ncbi \
           -v $taxDb_dir:/opt/phytopipe/db/ncbi/taxonomy \
           -v $kronaTaxDb_dir:/opt/KronaTools-2.8.1/taxonomy \
           -v $config:/opt/phytopipe/config.yaml \
          healthyplant/phytopipe \
           snakemake --configfile /opt/phytopipe/config.yaml \
           -s /opt/phytopipe/Snakefile \
           --config workDir=/data \
           --cores 32  -n

#If no errors on dry run, you can run PhytoPipe in the background
#use "-d" for runing in the background
docker run -d --rm --name phytopipe \
           -v $workDir:/data \
           -v $krakenDb_dir:/opt/phytopipe/db/kraken_db \
           -v $kaijuDb_dir:/opt/phytopipe/db/kaiju_db \
           -v $ncbi_nt_dir:/opt/phytopipe/db/ncbi_nt \
           -v $euk_rRNA_dir:/opt/phytopipe/db/rRNA \
           -v $ncbiDb_dir:/opt/phytopipe/db/ncbi \
           -v $taxDb_dir:/opt/phytopipe/db/ncbi/taxonomy \
           -v $kronaTaxDb_dir:/opt/KronaTools-2.8.1/taxonomy \
           -v $config:/opt/phytopipe/config.yaml \
          healthyplant/phytopipe \
           snakemake --configfile /opt/phytopipe/config.yaml \
           -s /opt/phytopipe/Snakefile \
           --config workDir=/data \
           --cores 32 

#check docker status
docker ps -a

#check logs
docker logs phytopipe
#or
docker run -d healthyplant/phytopipe | xargs docker logs -f

After successfully running, you should see the report in the $workDir.

You can put all the same type files (e.g., all paired-end reads or all single reads files) into the "raw" folder to run multiple samples.

You can download "runDocker.sh" from Github https://github.com/healthyPlant/PhytoPipe to edit and use it.

bash ./runDocker.sh

Using the PhytoPipe image in Windows

Please note that data must be under the same drive than the Docker Toolbox installation (usually C:) and in a folder with write permissions (e.g. C:\Users\User_name).

You should adapt and run commands in PowerShell in Windows.
The difference between Linux Bash and Windows PowerShell for a variable:
A new variable needs the preceding dollar ($) sign when assigning a value to it in Powershell, not in Bash;
To use a variable, add $ before the variable in Bash, add {} in PowerShell, e.g. ${variable}.

You can use our script updateDatabaseDocker.sh to build or update all databases. Kraken2 database building will take several days.
Suppose your database folder is C:\Users\User_name\phytopipe_db, you can run the following command

shell
docker run -d --rm -v "/c/Users/User_name/phytopipe_db":/data healthyplant/phytopipe bash /opt/phytopipe/scripts/updateDatabaseDocker.sh /opt/phytopipe /data v25.0

v25.0 is RVDB version from RVDB database, protein version. Please find the newest version when you update the database.

After the databases are built, you will see the following folders in C:/Users/User_name/phytopipe_db

#kraken2 database folder  
C:\Users\User_name\phytopipe_db\kraken_db #hash.k2d  opts.k2d  seqid2taxid.map  taxo.k2d   
#kaiju database folder  
C:\Users\User_name\phytopipe_db\kaiju_db  #/kaiju_db_nr_euk.fmi  
#NCBI blastn nt database downloaded from NCBI  
C:\Users\User_name\phytopipe_db\ncbi_nt  #/nt_1.* .....  
#SILVA 18S and 28S Eukaryote ribosomal RNA database  
C:\Users\User_name\phytopipe_db\rRNA #/silva-euk_combined_rRNA.fasta  
#NCBI db  
C:\Users\User_name\phytopipe_db\ncbi #nr.dmnd refseq_viral_genomic.fa  rvdb.dmnd microbial.tids   
#NCBI taxonomy database  
C:\Users\User_name\phytopipe_db\taxonomy  #refseq_viral.gb_taxon.txt rvdb.gb_taxon.txt nodes.dmp names.dmp  
#Krona taxonomy  
C:\Users\User_name\phytopipe_db\krona_db  #all.accession2taxid.sorted taxonomy.tab  

Now you can test the pipeline using https://github.com/healthyPlant/PhytoPipe/tree/main/test/data.

shell
#suppose your work directory is C:\Users\User_name\Dataset8
$workDir="/c/Users/User_name/Dataset8"  #add $ before variable and change a backslash "\" to a slash "/"

#the config file is config.docker.yaml
$config="/c/Users/User_name/Dataset8/config.docker.yaml"

#please put all fastq.gz files into the folder C:/Users/User_name/Dataset8/raw.

#variables for databases
$phytopipeDb_dir="/c/Users/User_name/phytopipe_db"
$kronaTaxDb_dir="/c/Users/User_name/phytopipe_db/krona_db"

#dry run PhytoPipe on docker
docker run -it --rm --name phytopipe `
           -v ${workDir}:/data `
           -v ${phytopipeDb_dir}:/opt/phytopipe/db `
           -v ${kronaTaxDb_dir}:/opt/KronaTools-2.8.1/taxonomy `
           -v ${config}:/opt/phytopipe/config.yaml `
          healthyplant/phytopipe `
           snakemake --configfile /opt/phytopipe/config.yaml `
           -s /opt/phytopipe/Snakefile `
           --config workDir=/data `
           --cores 32  -n

#If no errors on dry run, you can run PhytoPipe in the background
#use "-d" for runing in the background
docker run -d --rm --name phytopipe `
           -v ${workDir}:/data `
           -v ${phytopipeDb_dir}:/opt/phytopipe/db `
           -v ${kronaTaxDb_dir}:/opt/KronaTools-2.8.1/taxonomy `
           -v ${config}:/opt/phytopipe/config.yaml `
          healthyplant/phytopipe `
           snakemake --configfile /opt/phytopipe/config.yaml `
           -s /opt/phytopipe/Snakefile `
           --config workDir=/data `
           --cores 32  -n

#check docker status
docker ps -a

#check logs
docker logs phytopipe

After successfully running, you should see the report in the work directory (C:\Users\User_name\Dataset8).

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 phytopipe 镜像标签

docker pull docker.xuanyuan.run/healthyplant/phytopipe:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull healthyplant/phytopipe:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

一键安装

一键安装 Docker

Linux Docker 一键安装

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Apple Container

macOS 原生容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

Unraid

Unraid NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 专业版 · 企业版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
healthyplant/phytopipe
教程轩辕镜像功能与使用教程
定价查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
用户协议·隐私政策·增值电信业务经营许可证:浙B2-20261007·©2024-2026 源码跳动©2024-2026 杭州源码跳动科技有限公司·商务合作:点击复制邮箱