Skip to content
Snippets Groups Projects
Verified Commit d5f43633 authored by Laurent Modolo's avatar Laurent Modolo
Browse files

Merge: 23ddf03 (nanopipe/master)

parent 966a31ee
No related branches found
No related tags found
No related merge requests found
Showing
with 430 additions and 0 deletions
#Set the base image to Ubuntu 18.04
FROM ubuntu:18.04
# File Author / Maintainer
MAINTAINER Laurent Jourdren <jourdren@biologie.ens.fr>
ARG PACKAGE_VERSION=5.0.11
ARG BUILD_PACKAGES="wget apt-transport-https"
ARG DEBIAN_FRONTEND=noninteractive
RUN apt update && \
apt install --yes $BUILD_PACKAGES && \
cd /tmp && \
wget -q https://mirror.oxfordnanoportal.com/software/analysis/ont_guppy_cpu_${PACKAGE_VERSION}-1~bionic_amd64.deb && \
apt install --yes /tmp/ont_guppy_cpu_${PACKAGE_VERSION}-1~bionic_amd64.deb && \
rm *.deb && \
apt-get autoremove --purge --yes && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
\ No newline at end of file
#!/bin/sh
docker pull lbmc/guppy-cpu:5.0.11
docker build src/.docker_modules/guppy-cpu/5.0.11 -t 'lbmc/guppy-cpu:5.0.11'
docker push lbmc/guppy-cpu:5.0.11
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/guppy-cpu:5.0.11" --push src/.docker_modules/guppy-cpu/5.0.11
#Set the base image to Ubuntu 18.04
FROM ubuntu:18.04
# File Author / Maintainer
MAINTAINER Laurent Jourdren <jourdren@biologie.ens.fr>
ARG PACKAGE_VERSION=6.0.1
ARG BUILD_PACKAGES="wget apt-transport-https"
ARG DEBIAN_FRONTEND=noninteractive
RUN apt update && \
apt install --yes $BUILD_PACKAGES && \
cd /tmp && \
wget -q https://mirror.oxfordnanoportal.com/software/analysis/ont_guppy_cpu_${PACKAGE_VERSION}-1~bionic_amd64.deb && \
apt install --yes /tmp/ont_guppy_cpu_${PACKAGE_VERSION}-1~bionic_amd64.deb && \
rm *.deb && \
apt-get autoremove --purge --yes && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
\ No newline at end of file
#!/bin/sh
docker pull lbmc/guppy-cpu:6.0.1
docker build src/.docker_modules/guppy-cpu/6.0.1 -t 'lbmc/guppy-cpu:6.0.1'
docker push lbmc/guppy-cpu:6.0.1
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/guppy-cpu:6.0.1" --push src/.docker_modules/guppy-cpu/6.0.1
FROM quay.io/biocontainers/samtools:0.1.18--hfb9b9cc_10 AS samtools
# /usr/local/bin/samtools
# / # ldd /usr/local/bin/samtools
# /lib64/ld-linux-x86-64.so.2 (0x7efddcdcc000)
# libncurses.so.6 => /usr/local/bin/../lib/libncurses.so.6 (0x7efddcfad000)
# libtinfo.so.6 => /usr/local/bin/../lib/libtinfo.so.6 (0x7efddcf6f000)
# libm.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7efddcdcc000)
# libz.so.1 => /usr/local/bin/../lib/libz.so.1 (0x7efddcf55000)
# libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7efddcdcc000)
FROM quay.io/biocontainers/minimap2:2.20--h5bf99c6_0
MAINTAINER adapted by Xavier Grand from Laurent Modolo template
ENV MINIMAP2_VERSION=2.20
COPY --from=samtools /usr/local/bin/samtools /usr/local/bin/
COPY --from=samtools /usr/local//lib/libncurses.so.6 /usr/local/lib/
COPY --from=samtools /usr/local//lib/libtinfo.so.6 /usr/local/lib/
# /usr/local/bin/minimap2
# / # ldd /usr/local/bin/minimap2
# /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
# libm.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
# libz.so.1 => /usr/local/bin/../lib/libz.so.1 (0x7fe14f7c4000)
# libpthread.so.0 => /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
# libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
\ No newline at end of file
#!/bin/sh
docker pull lbmc/minimap2:2.20
docker build src/.docker_modules/minimap2/2.20 -t 'lbmc/minimap2:2.20'
docker push lbmc/minimap2:2.20
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/minimap2:2.20" --push src/.docker_modules/minimap2/2.20
\ No newline at end of file
FROM quay.io/biocontainers/samtools:0.1.18--hfb9b9cc_10 AS samtools
# /usr/local/bin/samtools
# / # ldd /usr/local/bin/samtools
# /lib64/ld-linux-x86-64.so.2 (0x7efddcdcc000)
# libncurses.so.6 => /usr/local/bin/../lib/libncurses.so.6 (0x7efddcfad000)
# libtinfo.so.6 => /usr/local/bin/../lib/libtinfo.so.6 (0x7efddcf6f000)
# libm.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7efddcdcc000)
# libz.so.1 => /usr/local/bin/../lib/libz.so.1 (0x7efddcf55000)
# libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7efddcdcc000)
FROM quay.io/biocontainers/minimap2:2.24--h7132678_1
MAINTAINER adapted by Xavier Grand from Laurent Modolo template
ENV MINIMAP2_VERSION=2.24
COPY --from=samtools /usr/local/bin/samtools /usr/local/bin/
COPY --from=samtools /usr/local//lib/libncurses.so.6 /usr/local/lib/
COPY --from=samtools /usr/local//lib/libtinfo.so.6 /usr/local/lib/
# /usr/local/bin/minimap2
# / # ldd /usr/local/bin/minimap2
# /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
# libm.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
# libz.so.1 => /usr/local/bin/../lib/libz.so.1 (0x7fe14f7c4000)
# libpthread.so.0 => /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
# libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7fe14f5a8000)
\ No newline at end of file
#!/bin/sh
docker pull lbmc/minimap2:2.24
docker build src/.docker_modules/minimap2/2.24 -t 'lbmc/minimap2:2.24'
docker push lbmc/minimap2:2.24
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/minimap2:2.24" --push src/.docker_modules/minimap2/2.24
\ No newline at end of file
###############################################
# Dockerfile to build poretools container image
# Based on Ubuntu 16.04
# Build with:
# sudo docker build -t poretools .
###############################################
# Use ubuntu 16.04 base image
FROM ubuntu:16.04
# File author/maintainer info
MAINTAINER Sophie Lemoine <slemoine@biologie.ens.fr> and Charlotte Berthelier <bertheli@biologie.ens.fr>
# Set non-interactive mode
ENV DEBIAN_FRONTEND noninteractive
ARG PACKAGE_VERSION=0.2.4
ARG BUILD_PACKAGES="git python3 python3-pkg-resources build-essential"
# Install dependencies
RUN apt update && \
apt install --yes $BUILD_PACKAGES
WORKDIR /tmp
RUN git clone https://github.com/rrwick/Porechop.git
WORKDIR /tmp/Porechop
RUN git checkout v$PACKAGE_VERSION
RUN python3 setup.py install && \
rm -rf /tmp/Porechop && \
apt remove --purge --yes git build-essential && \
apt autoremove --purge --yes
# Set entrypoint so container can be used as executable
ENTRYPOINT ["porechop"]
CMD ["-h"]
\ No newline at end of file
#!/bin/sh
docker pull lbmc/porechop:0.2.4
docker build src/.docker_modules/porechop/0.2.4 -t 'lbmc/porechop:0.2.4'
docker push lbmc/porechop:0.2.4
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/porechop:0.2.4" --push src/.docker_modules/porechop/0.2.4
\ No newline at end of file
# image: COMBINE-lab/salmon
# This dockerfile is based on the one created by
# Titus Brown (available at https://github.com/ctb/2015-docker-building/blob/master/salmon/Dockerfile)
FROM ubuntu:18.04
MAINTAINER salmon.maintainer@gmail.com
ENV PACKAGES git gcc make g++ libboost-all-dev liblzma-dev libbz2-dev \
ca-certificates zlib1g-dev libcurl4-openssl-dev curl unzip autoconf apt-transport-https ca-certificates gnupg software-properties-common wget
ENV SALMON_VERSION 1.8.0
# salmon binary will be installed in /home/salmon/bin/salmon
### don't modify things below here for version updates etc.
WORKDIR /home
RUN apt-get update && \
apt remove -y libcurl4 && \
apt-get install -y --no-install-recommends ${PACKAGES} && \
apt-get clean
RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add -
RUN apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main'
RUN apt-get update
RUN apt-key --keyring /etc/apt/trusted.gpg del C1F34CDD40CD72DA
RUN apt-get install kitware-archive-keyring
RUN apt-get install -y cmake
RUN curl -k -L https://github.com/COMBINE-lab/salmon/archive/v${SALMON_VERSION}.tar.gz -o salmon-v${SALMON_VERSION}.tar.gz && \
tar xzf salmon-v${SALMON_VERSION}.tar.gz && \
cd salmon-${SALMON_VERSION} && \
mkdir build && \
cd build && \
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install
# For dev version
#RUN git clone https://github.com/COMBINE-lab/salmon.git && \
# cd salmon && \
# git checkout develop && \
# mkdir build && \
# cd build && \
# cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local && make && make install
ENV PATH /home/salmon-${SALMON_VERSION}/bin:${PATH}
ENV LD_LIBRARY_PATH "/usr/local/lib:${LD_LIBRARY_PATH}"
RUN echo "export PATH=$PATH" > /etc/environment
RUN echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH" > /etc/environment
\ No newline at end of file
#!/bin/sh
docker pull lbmc/salmon:1.8.0
docker build src/.docker_modules/salmon/1.8.0 -t 'lbmc/salmon:1.8.0'
docker push lbmc/salmon:1.8.0
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/salmon:1.8.0" --push src/.docker_modules/salmon/1.8.0
\ No newline at end of file
FROM ubuntu:16.04
#Begin: install prerequisites
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
curl \
git \
libcurl3-dev \
libfreetype6-dev \
libpng12-dev \
libzmq3-dev \
locate \
pkg-config \
rsync \
software-properties-common \
sudo \
unzip \
wget \
zip \
zlib1g-dev \
&& \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
#End: install prerequisites
#Begin: install golang
ENV GOLANG_DOWNLOAD_URL https://golang.org/dl/go1.17.9.linux-amd64.tar.gz
ENV GOPATH $HOME/go
ENV PATH $PATH:/usr/local/go/bin:$GOPATH/bin
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \
sudo tar -C /usr/local -xzf golang.tar.gz && \
rm golang.tar.gz && \
mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH"
#End: install golang
#Begin: install delve
RUN go install github.com/go-delve/delve/cmd/dlv@latest
#1.8.3
#End: install delve
#Begin: install seqkit
RUN go install github.com/shenwei356/seqkit/v2/seqkit@v2.1.0
#2.1.0
#End: install seqkit
WORKDIR $HOME/go/src/github.com/shenwei356/seqkit
\ No newline at end of file
#!/bin/sh
docker pull lbmc/seqkit:2.1.0
docker build src/.docker_modules/seqkit/2.1.0 -t 'lbmc/seqkit:2.1.0'
docker push lbmc/seqkit:2.1.0
docker buildx build --platform linux/amd64,linux/arm64 -t "lbmc/seqkit:2.1.0" --push src/.docker_modules/seqkit/2.1.0
\ No newline at end of file
......@@ -77,3 +77,26 @@ process trimming {
${reads} > ${file_prefix}_report.txt
"""
}
process 5pRACE {
container = "${container_url}"
label "big_mem_mono_cpus"tag "$file_id"
if (params.cutadapt_out != "") {
publishDir "results/${params.cutadapt_out}", mode: 'copy'
}
input:
tuple val(file_id), path(fastq)
output:
tuple val(file_id), path("*_cut_*"), emit: fastq
"""
cutadapt -e 0.2 -g CGACTGGAGCACGAGGACACTGACATGGACTGAAGGAGTAGAAA -g TTAGGCAGAGGTGAAAAAGTTG
-a TTTCTACTCCTTCAGTCCATGTCAGTGTCCTCGTGCTCCAGTCG -a CAACTTTTTCACCTCTGCCTAA
-o ${}
${fastq}
"""
}
\ No newline at end of file
version = "5.0.11"
container_url = "lbmc/guppy-cpu:${version}"
params.basecalling_out = ""
params.flowcell = "FLO-MIN106"
params.kit = "SQK-PCS109"
params.cpu_threads_per_caller = 4
params.num_callers = 1
process basecall_fast5 {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
if (params.basecalling_out != "") {
publishDir "results/${params.basecalling_out}", mode: 'copy'
}
if (params.flowcell == "") {
errorFlowcell << "WARNING ! No Flowcell type given..."
errorFlowcell.view()
}
if (params.kit == "") {
errorKit "WARNING ! No kit type given..."
errorKit.view()
}
input:
tuple val(file_id), path(fast5)
output:
tuple val(file_id), path("*.fastq*"), emit: fastq
script:
"""
guppy_basecaller --compress_fastq \
-i ${path(fast5)} \
-s ${params.basecalling_out} \
--cpu_threads_per_caller ${params.cpu_threads_per_caller} \
--num_callers ${params.num_callers} \
--flowcell ${params.flowcell} \
--kit ${params.kit}
"""
}
\ No newline at end of file
version = "5.0.11"
container_url = "lbmc/guppy-gpu:${version}"
params.basecalling_out = ""
params.flowcell = ""
params.kit = ""
params.gpu_runners_per_device = 16
process basecall_fast5 {
container = "${container_url}"
// Need to create a profile using GPUs
label ""
tag "$file_id"
if (params.basecalling_out != "") {
publishDir "results/${params.basecalling_out}", mode: 'copy'
}
if (params.flowcell == "") {
errorFlowcell << "WARNING ! No Flowcell type given..."
errorFlowcell.view()
}
if (params.kit == "") {
errorKit "WARNING ! No kit type given..."
errorKit.view()
}
input:
tuple val(file_id), path(fast5)
output:
tuple val(file_id), path("*.fastq*"), emit: fastq
script:
"""
guppy_basecaller --compress_fastq -x "cuda:all" --min_qscore 7.0 \
-i ${path(fast5)} \
-s ${params.basecalling_out} \
--gpu_runners_per_device ${params.gpu_runners_per_device} \
--flowcell ${params.flowcell} \
--kit ${params.kit}
"""
}
\ No newline at end of file
version = "0.2.4"
container_url = "lbmc/porechop:${version}"
process porechop {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
if (params.porechop_out != "") {
publishDir "results/${params.porechop_out}", mode: 'copy'
}
input:
tuple val(file_id), path(fatsq)
output:
tuple val(file_id), path("*_porechoped.fastq"), emit: porechoped_fastq
script:
"""
porechop -i ${fastq} -o ${file_id}_porechoped.fastq --threads 4
"""
}
\ No newline at end of file
version = "1.8.0"
container_url = "lbmc/salmon:${version}"
process quantify {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
if (params.salmon_out != "") {
publishDir "results/${params.salmon_out}", mode: 'copy'
}
input:
tuple val(file_id), path(bam)
output:
tuple val(file_id), path("*.sf"), emit: quant
script:
"""
salmon quant -l A --noErrorModel -t XXXXXXXXXX -a ${bam} -p 4 -o ${params.salmon_out}
"""
}
\ No newline at end of file
version = "2.1.1"
container_url = "lbmc/stringtie2:${version}"
process jcount {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
if (params.salmon_out != "") {
publishDir "results/${params.salmon_out}", mode: 'copy'
}
input:
tuple val(file_id), path(bam)
output:
tuple val(file_id), path("*.sf"), emit: quant
script:
"""
salmon quant -l A --noErrorModel -t XXXXXXXXXX -a ${bam} -p 4 -o ${params.salmon_out}
"""
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment