Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
T
Test
Manage
Activity
Members
Labels
Plan
Issues
0
Issue boards
Milestones
Wiki
Code
Merge requests
0
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Fortune Iriaye
Test
Commits
b6988b97
Commit
b6988b97
authored
2 months ago
by
iam4tune
Browse files
Options
Downloads
Patches
Plain Diff
Container for Speedseq
parent
35a024e4
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
docker/Dockerfile
+79
-24
79 additions, 24 deletions
docker/Dockerfile
with
79 additions
and
24 deletions
docker/Dockerfile
+
79
−
24
View file @
b6988b97
# Recommended build process
FROM
ubuntu:18.04
#get CUDA - getting an older version for compatibility, recommend changing to newer
LABEL
maintainer="Your Name <your.email@example.com>"
FROM
nvidia/cuda:12.6.0-devel-ubuntu22.04
ENV
DEBIAN_FRONTEND=noninteractive
# get packages
WORKDIR
/root
# ----------- Install Core System Dependencies -----------
ARG
DEBIAN_FRONTEND="noninteractive"
RUN
apt-get update
&&
apt-get
install
-y
\
RUN
apt-get update
-y
git build-essential cmake g++
\
RUN
apt-get
install
build-essential
-y
wget
-y
libboost-all-dev
-y
libeigen3-dev
-y
libgoogle-glog-dev
-y
libprotobuf-dev
-y
protobuf-compiler
-y
libhdf5-dev
-y
libatlas-base-dev
-y
python3-dev
-y
librdkit-dev
-y
python3-numpy
-y
python3-pip
-y
python3-pytest
-y
swig
-y
zlib1g-dev libncurses5-dev libbz2-dev liblzma-dev
\
RUN
apt update
;
apt upgrade
-y
;
apt-get
-y
install
build-essential git wget libboost-all-dev libeigen3-dev libgoogle-glog-dev libprotobuf-dev protobuf-compiler libhdf5-dev libatlas-base-dev python3-dev librdkit-dev python3-numpy python3-pip python3-pytest libjsoncpp-dev
libcurl4-openssl-dev libssl-dev
\
RUN
apt-get update
-y
&&
apt-get
install
git-all
-y
curl
&&
apt-get update
-y
python2.7 python-pip python-numpy python-scipy
\
RUN
rm
-rf
/var/lib/apt/lists/
*
libboost-all-dev curl unzip wget parallel
\
RUN
pip3
install
cmake scikit-image pyquaternion google-api-python-client six
libtbb-dev samtools locales
\
RUN
pip3
install
torch torchvision torchaudio
perl curl
\
unzip
\
RUN
git clone https://github.com/openbabel/openbabel.git
&&
cd
openbabel
&&
git checkout openbabel-3-1-1
&&
mkdir
build
&&
cd
build
&&
cmake
-DWITH_MAEPARSER
=
OFF
-DWITH_COORDGEN
=
OFF
-DPYTHON_BINDINGS
=
ON
-DRUN_SWIG
=
ON ..
&&
make
-j4
&&
make
install
x11-utils xorg-dev libx11-dev
\
libxpm-dev libxft-dev libxext-dev
&&
\
ADD
"https://github.com/gnina/gnina/commits?per_page=1" latest_commit
apt-get clean
&&
rm
-rf
/var/lib/apt/lists/
*
RUN
git clone https://github.com/gnina/gnina.git
;
\
# Set Python 2 as default
cd
gnina
;
mkdir
build
;
cd
build
;
\
RUN
update-alternatives
--install
/usr/bin/python python /usr/bin/python2.7 1
cmake ..
;
\
make
-j4
;
make
install
# Install Python modules
\ No newline at end of file
RUN
pip
install
pysam
==
0.8.4
# Set UTF-8 locale
RUN
locale-gen en_US.UTF-8
ENV
LANG en_US.UTF-8
ENV
LANGUAGE en_US:en
ENV
LC_ALL=en_US.UTF-8
# ----------- Clone and Build SpeedSeq -----------
WORKDIR
/opt
RUN
git clone
--recursive
https://github.com/hall-lab/speedseq.git
WORKDIR
/opt/speedseq
RUN
make
ENV
SPEEDSEQ_DIR=/opt/speedseq
ENV
PATH="$SPEEDSEQ_DIR/bin:$PATH"
# ----------- OPTIONAL: Install CNVnator and ROOT -----------
# Toggle these installs with --build-arg flags
ARG
INSTALL_CNVNATOR=true
RUN if
[
"
$INSTALL_CNVNATOR
"
=
"true"
]
;
then
\
curl
-OL
ftp://root.cern.ch/root/root_v5.34.20.source.tar.gz
&&
\
tar
-zxvf
root_v5.34.20.source.tar.gz
&&
\
cd
root
&&
\
./configure
--prefix
=
/opt/root
&&
\
make
-j4
&&
\
echo
"source /opt/root/bin/thisroot.sh"
>>
/etc/bash.bashrc
&&
\
cd
$SPEEDSEQ_DIR
&&
\
source
/opt/root/bin/thisroot.sh
&&
\
make cnvnator
;
\
fi
ENV
ROOTSYS=/opt/root
ENV
PATH="$ROOTSYS/bin:$PATH"
ENV
LD_LIBRARY_PATH="$ROOTSYS/lib:$LD_LIBRARY_PATH"
ENV
DYLD_LIBRARY_PATH="$ROOTSYS/lib:$DYLD_LIBRARY_PATH"
# ----------- OPTIONAL: Install VEP -----------
ARG
INSTALL_VEP=true
RUN if
[
"
$INSTALL_VEP
"
=
"true"
]
;
then
\
mkdir
-p
$SPEEDSEQ_DIR
/annotations/vep_cache
&&
\
curl
-OL
https://github.com/Ensembl/ensembl-tools/archive/release/76.zip
&&
\
unzip 76.zip
&&
\
perl ensembl-tools-release-76/scripts/variant_effect_predictor/INSTALL.pl
\
-c
$SPEEDSEQ_DIR
/annotations/vep_cache
\
-a
ac
-s
homo_sapiens
-y
GRCh37
&&
\
cp
ensembl-tools-release-76/scripts/variant_effect_predictor/variant_effect_predictor.pl
$SPEEDSEQ_DIR
/bin
&&
\
cp
-r
ensembl-tools-release-76/scripts/variant_effect_predictor/Bio
$SPEEDSEQ_DIR
/bin
;
\
fi
# ----------- Final Touches -----------
WORKDIR
/data
ENTRYPOINT
["speedseq"]
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment