본문 바로가기

Bioinformatics(생정보학)

Strelka2 도커 및 실행법

728x90
반응형

도커파일 (Dockerfile)

# Strelka2를 구동하기 위한 dockerfile임.
FROM ubuntu:20.04

# 이상한 메세지 블락하기
ARG DEBIAN_FRONTEND=noninteractive

# 필요 라이브러리 설치 시작
RUN apt-get update -qq && apt-get install -y -qq bzip2 gcc g++ make python zlib1g-dev wget
RUN apt-get clean autoclean && apt-get autoremove -y 

WORKDIR /home
RUN mkdir /home/strelka2

#RUN wget https://github.com/Illumina/strelka/releases/download/v2.9.2/strelka-2.9.2.centos6_x86_64.tar.bz2 && \
#    tar xvjf strelka-2.9.2.centos6_x86_64.tar.bz2

RUN cd /home/strelka2 && \
    wget https://github.com/Illumina/strelka/releases/download/v2.9.10/strelka-2.9.10.centos6_x86_64.tar.bz2 && \
    tar xvjf strelka-2.9.10.centos6_x86_64.tar.bz2

# 실행 가능 여부 확인
RUN cd /home/strelka2/strelka-2.9.10.centos6_x86_64/bin && \
    bash runStrelkaGermlineWorkflowDemo.bash

# 웰컴메세지 셋팅을 위한 내용 넣기
RUN rm -rf /etc/init.d/welcome.sh
RUN echo "echo 'strelka2를 실행할 때는 path/~.py로 실행하세요.'" > /home/readme.txt
RUN echo "echo '/home/strelka2/strelka-2.9.10.centos6_x86_64/bin/ 입니다.'" >> /home/readme.txt
RUN echo "echo 'Germline은 configureStrelkaGermlineWorkflow.py'" >> /home/readme.txt
RUN echo "echo 'Somatic은 configureStrelkaSomaticWorkflow.py'" >> /home/readme.txt

# Working directory 설정
WORKDIR /home

 

명령어는 아래와 같이 실행한다.

먼저 configureStrelkaGremlineWorkflow.py 또는 configureStrelkaSomaticWorkflow.py를 실행해야 variant call을 위한 설정파일들이 생성된다.

/home/strelka2/strelka-2.9.10.centos6_x86_64/bin/configureStrelkaSomaticWorkflow.py \
--normalBam /docker/path/to/normal.bam \
--tumorBam /docker/path/to/tumor.bam \
--referenceFasta /docker/path/to/reference_genome_fasta.fa \
--callRegions /docker/path/to/bed.gz \
--runDir /docker/path/to/output_dir

실행 후 output directory에는 아래와 같은 구성이 된다.

configure~~~Workflow.py 실행 후 결과물이 저장될 폴더의 모습

runDir에 들어가서 아래의 명령어를 실행하면 된다.

python /path/to/runDir/runWorkflow.py -m local -j 25

명령어 실행 후 variant call이 진행되는 모습

도커 내에서는 root로 실행되므로 권한 문제가 생기지 않게 chmod 777을 주도록 하자.

728x90
반응형