From 2e89efaaedc79ab4bd579f9677dfecfef529de11 Mon Sep 17 00:00:00 2001 From: David Danko Date: Tue, 28 Sep 2021 10:56:39 -0400 Subject: [PATCH 1/2] feat: docker image that can run mcap and directions --- containers/README.md | 41 ++++++++ containers/docker/latest/Dockerfile | 91 ++++++++++++++++++ containers/docker/latest/Makefile | 17 ++++ containers/docker/latest/dbs/README.txt | 1 + containers/docker/latest/demo/Makefile | 10 ++ containers/docker/latest/demo/README.md | 14 +++ containers/docker/latest/demo/config.yaml | 2 + containers/docker/latest/demo/manifest.txt | 1 + .../latest/demo/zymo_pos_cntrl.r1.fq.gz | Bin 0 -> 65002 bytes .../latest/demo/zymo_pos_cntrl.r2.fq.gz | Bin 0 -> 71156 bytes containers/docker/latest/mcap_config.yaml | 4 + containers/docker/latest/out/README.txt | 1 + 12 files changed, 182 insertions(+) create mode 100644 containers/README.md create mode 100644 containers/docker/latest/Dockerfile create mode 100644 containers/docker/latest/Makefile create mode 100644 containers/docker/latest/dbs/README.txt create mode 100644 containers/docker/latest/demo/Makefile create mode 100644 containers/docker/latest/demo/README.md create mode 100644 containers/docker/latest/demo/config.yaml create mode 100644 containers/docker/latest/demo/manifest.txt create mode 100644 containers/docker/latest/demo/zymo_pos_cntrl.r1.fq.gz create mode 100644 containers/docker/latest/demo/zymo_pos_cntrl.r2.fq.gz create mode 100644 containers/docker/latest/mcap_config.yaml create mode 100644 containers/docker/latest/out/README.txt diff --git a/containers/README.md b/containers/README.md new file mode 100644 index 00000000..15812dec --- /dev/null +++ b/containers/README.md @@ -0,0 +1,41 @@ +# Containerization + + +## Running the MCAP with Docker + + +To run the MCAP with docker you will need to create two directories: 1) one where databases should be stored on your machine's filesystem and 2) one where the output from the mcap should go. For simplicity we will call these 1) `/my/databases` and `/my/outputs`. + +To run the MCAP use this command: + +``` +docker run \ + --mount source=/my/databases,target=/mcap/dbs,type=bind,readonly \ + --mount source=/my/outputs,target=/mcap/out,type=bind \ + -it mcap \ + cap2 --help +``` + +This command will print a help message and then exit. To run the mcap pipeline replace `cap2 --help` with a more complete command. + + +### Using external databases + +Typically you won't want to download new databases every time you use the MCAP. Unfortunately the databases used by the MCAP are too large to fit comfortably into a docker image. As a work around the MCAP docker image can be set to look for already existing databases in your machine's filesystem. To do this you need to 1) load databases onto your local filesystem, 2) instruct docker to connect to these databases when it runs. + +#### Loading databases to your local filesystem + + +#### Letting docker connect to your databases + +Suppose you have the MCAP databases downloaded into a directory on your local filesystem called `/path/to/mcap/databases`. You can instruct docker to connect to this folder at runtime using the following command: + +``` +docker run \ + --mount source=/path/to/mcap/databases,target=/mcap/dbs,type=bind,readonly \ + -it mcap \ + /bin/bash + +``` + +This command will make it possible for commands run in this docker image to read data from `/path/to/mcap/databases`. This command is read-only meaning the docker image will not be able to edit files. \ No newline at end of file diff --git a/containers/docker/latest/Dockerfile b/containers/docker/latest/Dockerfile new file mode 100644 index 00000000..1301e1b1 --- /dev/null +++ b/containers/docker/latest/Dockerfile @@ -0,0 +1,91 @@ +FROM --platform=linux/amd64 ubuntu:20.04 + +WORKDIR /mcap +RUN mkdir -p /mcap/dbs /mcap/demo + +# Necessary for R +ENV TZ=America/New_York +ENV DEBIAN_FRONTEND=noninteractive +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone + + +RUN apt-get update -y && apt-get install -y \ + bzip2 \ + build-essential \ + zlib1g-dev \ + libc6 \ + libncurses5-dev \ + libncursesw5-dev \ + libnss-sss \ + libbz2-dev \ + liblzma-dev \ + less \ + libcurl4-openssl-dev \ + wget \ + unzip \ + zip \ + r-base \ + r-base-core \ + r-recommended \ + default-jre \ + default-jdk \ + python \ + python3 \ + python3-pip \ + mafft \ + curl \ + rsync \ + git && \ + rm -rf /var/lib/apt/lists/* + +# Install Miniconda +ENV PATH="/root/miniconda3/bin:${PATH}" +ARG PATH="/root/miniconda3/bin:${PATH}" +RUN wget \ + https://repo.anaconda.com/miniconda/Miniconda3-py38_4.10.3-Linux-x86_64.sh \ + && mkdir /root/.conda \ + && bash Miniconda3-py38_4.10.3-Linux-x86_64.sh -b \ + && rm -f Miniconda3-py38_4.10.3-Linux-x86_64.sh +RUN conda --version + +# Install software with conda +# Based on https://jcristharif.com/conda-docker-tips.html +RUN conda install --yes -c bioconda \ + numpy \ + pandas \ + scipy + +RUN pip install \ + pangea_api \ + Jinja2==3.0.0a1 \ + biopython==1.76 \ + click==6.7 \ + pysam \ + python-louvain + +RUN pip install \ + gimmebio.seqs \ + bloom_filter \ + luigi==3.0.0b2 \ + PyYaml==5.3.1 + +RUN conda install --yes -c conda-forge matplotlib + +RUN conda clean -afy + +RUN pip install cap2==0.4.1 + +RUN cap2 --help + +ADD demo /mcap/demo/ +WORKDIR /mcap/demo +RUN cap2 run pipeline --stage pre manifest.txt + + +WORKDIR /mcap +COPY mcap_config.yaml /mcap/config.yaml +ENV CAP2_CONFIG=/mcap/config.yaml +RUN mkdir -p /mcap/out + + +CMD ["bash"] \ No newline at end of file diff --git a/containers/docker/latest/Makefile b/containers/docker/latest/Makefile new file mode 100644 index 00000000..d98a66e5 --- /dev/null +++ b/containers/docker/latest/Makefile @@ -0,0 +1,17 @@ + +build: + docker buildx build --platform linux/amd64 -t mcap . + +shell: build + docker run \ + --mount source=`pwd`/dbs,target=/mcap/dbs,type=bind,readonly \ + --mount source=`pwd`/out,target=/mcap/out,type=bind \ + -it mcap \ + /bin/bash + +mcap: build + docker run \ + --mount source=`pwd`/dbs,target=/mcap/dbs,type=bind,readonly \ + --mount source=`pwd`/out,target=/mcap/out,type=bind \ + -it mcap \ + cap2 --help \ No newline at end of file diff --git a/containers/docker/latest/dbs/README.txt b/containers/docker/latest/dbs/README.txt new file mode 100644 index 00000000..6afecb59 --- /dev/null +++ b/containers/docker/latest/dbs/README.txt @@ -0,0 +1 @@ +this file should only be visible in the docker container if dbs was mounted properly \ No newline at end of file diff --git a/containers/docker/latest/demo/Makefile b/containers/docker/latest/demo/Makefile new file mode 100644 index 00000000..6574984d --- /dev/null +++ b/containers/docker/latest/demo/Makefile @@ -0,0 +1,10 @@ + +qc: + cap2 run pipeline -s qc -c config.yaml manifest.txt + + +clean: + -rm -r config + -rm -r demo_db + -rm -r demo_out + -rm -r vendor diff --git a/containers/docker/latest/demo/README.md b/containers/docker/latest/demo/README.md new file mode 100644 index 00000000..c74eb482 --- /dev/null +++ b/containers/docker/latest/demo/README.md @@ -0,0 +1,14 @@ +# CAP2 Demo + +This directory is a demo for running the CAP from the command line. + +## Installation + +See `README.md` in main directory. + +## Running + +Run the demo by entering the command `cap2 run qc config.yaml manifest.txt` or `make qc` + + +## Notes diff --git a/containers/docker/latest/demo/config.yaml b/containers/docker/latest/demo/config.yaml new file mode 100644 index 00000000..4151df1e --- /dev/null +++ b/containers/docker/latest/demo/config.yaml @@ -0,0 +1,2 @@ +out_dir: demo_out +db_dir: demo_db diff --git a/containers/docker/latest/demo/manifest.txt b/containers/docker/latest/demo/manifest.txt new file mode 100644 index 00000000..fa0eaee0 --- /dev/null +++ b/containers/docker/latest/demo/manifest.txt @@ -0,0 +1 @@ +zymo_pos_cntrl zymo_pos_cntrl.r1.fq.gz zymo_pos_cntrl.r2.fq.gz \ No newline at end of file diff --git a/containers/docker/latest/demo/zymo_pos_cntrl.r1.fq.gz b/containers/docker/latest/demo/zymo_pos_cntrl.r1.fq.gz new file mode 100644 index 0000000000000000000000000000000000000000..45e5eed072c69c979799a4d9a2ea6966656bfbe9 GIT binary patch literal 65002 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%0D3+`P^hBc@S-hYg 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 literal 0 HcmV?d00001 diff --git a/containers/docker/latest/mcap_config.yaml b/containers/docker/latest/mcap_config.yaml new file mode 100644 index 00000000..fa8b7e83 --- /dev/null +++ b/containers/docker/latest/mcap_config.yaml @@ -0,0 +1,4 @@ +# This is the config file that is used in the MCAP docker container + +out_dir: out +db_dir: dbs \ No newline at end of file diff --git a/containers/docker/latest/out/README.txt b/containers/docker/latest/out/README.txt new file mode 100644 index 00000000..56c27e70 --- /dev/null +++ b/containers/docker/latest/out/README.txt @@ -0,0 +1 @@ +this file should only be visible in the docker container if out was mounted properly \ No newline at end of file From e29410634c2e1bc259aac3d5cc72d2d5aaaab19c Mon Sep 17 00:00:00 2001 From: David Danko Date: Tue, 28 Sep 2021 15:16:21 -0400 Subject: [PATCH 2/2] feat: install programs in docker image before running --- cap2/api.py | 22 +++++++++++++++++++++- cap2/cli.py | 13 +++++++++++++ cap2/pipeline/config.py | 2 ++ cap2/pipeline/utils/conda.py | 4 ++-- containers/docker/latest/Dockerfile | 23 ++++++++++++++++------- containers/docker/latest/mcap_config.yaml | 4 +++- setup.py | 2 +- 7 files changed, 58 insertions(+), 12 deletions(-) diff --git a/cap2/api.py b/cap2/api.py index 76be1e3d..925ae695 100644 --- a/cap2/api.py +++ b/cap2/api.py @@ -1,8 +1,11 @@ import luigi +from .sample import Sample from .pipeline.databases import MODULES as DB_MODULES - +from .pipeline.full_pipeline import FullPipeline +from .pipeline.utils.cap_task import BaseCapTask +from .pipeline.utils.conda import CondaPackage, PyPiPackage from .constants import ( STAGES, STAGES_GROUP, @@ -22,6 +25,23 @@ def run_db_stage(config_path='', cores=1, **kwargs): luigi.build(instances, local_scheduler=True, **kwargs) +def install_software(config_path='', cores=1, workers=1, **kwargs): + sample = Sample('not_a_real_sample', '/this/will/never/be/run') + modules, queue = [], [FullPipeline.from_sample(sample, config_path, cores=cores)] + while queue: + obj = queue.pop() + if isinstance(obj, BaseCapTask): + try: + for dependency in obj.requires(): + queue.append(dependency) + except TypeError: + queue.append(obj.requires()) + elif isinstance(obj, CondaPackage) or isinstance(obj, PyPiPackage): + modules.append(obj) + luigi.build(modules, local_scheduler=True, workers=workers, **kwargs) + + + def run_stage(samples, stage_name, config_path='', cores=1, workers=1, **kwargs): """Run a subpipeline on a list of samples. stage_name can be one of `qc`, `pre`, `reads`.""" modules = STAGES[stage_name] diff --git a/cap2/cli.py b/cap2/cli.py index cd9b2024..b4aa3134 100644 --- a/cap2/cli.py +++ b/cap2/cli.py @@ -6,6 +6,7 @@ from .api import ( run_db_stage, run_stage, + install_software, ) from .sample import Sample from .constants import ( @@ -73,5 +74,17 @@ def cap_pipeline(workers, threads, config, stage, manifest): run_stage(samples, stage, config_path=config, cores=threads, workers=workers) +@run.command('install') +@click.option('-w', '--workers', default=1) +@click.option('-c', '--config', type=click.Path(), default='') +def cap_pipeline(workers, config): + """Install the software needed by the MCAP. + + This command will make a series of calls to conda in + order to install the requisite software for the MCAP. + """ + install_software(config_path=config, workers=workers) + + if __name__ == '__main__': main() diff --git a/cap2/pipeline/config.py b/cap2/pipeline/config.py index da627f19..29d1e8a9 100644 --- a/cap2/pipeline/config.py +++ b/cap2/pipeline/config.py @@ -10,6 +10,8 @@ class PipelineConfig: def __init__(self, filename): if filename: self.blob = load(open(filename).read()) + elif 'CAP2_CONFIG' in environ: + self.blob = load(open(environ['CAP2_CONFIG']).read()) else: self.blob = {} self.out_dir = self.blob.get('out_dir', environ.get('CAP2_OUT_DIR', 'results')) diff --git a/cap2/pipeline/utils/conda.py b/cap2/pipeline/utils/conda.py index 7d954a12..7af77da7 100644 --- a/cap2/pipeline/utils/conda.py +++ b/cap2/pipeline/utils/conda.py @@ -59,7 +59,7 @@ def get_path(self, tool): def save_spec(self): proc = subprocess.Popen( - ' '.join(['conda', 'env', 'export', '--name', self.name]), + ' '.join(['conda', 'env', 'export']), stdout=subprocess.PIPE, shell=True ) @@ -111,7 +111,7 @@ def install(self, package, channel="anaconda"): except: print(f'Subprocess failed from {os.getcwd()}: {cmd}', file=sys.stderr) raise - self.save_spec() + # self.save_spec() self.add_to_path() def pypi_install(self, package): diff --git a/containers/docker/latest/Dockerfile b/containers/docker/latest/Dockerfile index 1301e1b1..bb2c45a7 100644 --- a/containers/docker/latest/Dockerfile +++ b/containers/docker/latest/Dockerfile @@ -70,22 +70,31 @@ RUN pip install \ PyYaml==5.3.1 RUN conda install --yes -c conda-forge matplotlib - RUN conda clean -afy -RUN pip install cap2==0.4.1 +WORKDIR /mcap +RUN mkdir -p /mcap/out /mcap/conda/config/envs /mcap/conda/vendor/conda +COPY mcap_config.yaml /mcap/config.yaml +ENV CAP2_CONFIG=/mcap/config.yaml + + +# install most of the software here +# so future updates will be faster +RUN pip install cap2==0.5.3 +RUN cap2 --help +RUN cap2 run install + +RUN pip install cap2==0.5.3 RUN cap2 --help ADD demo /mcap/demo/ WORKDIR /mcap/demo -RUN cap2 run pipeline --stage pre manifest.txt - +# RUN cap2 run pipeline --stage qc manifest.txt WORKDIR /mcap -COPY mcap_config.yaml /mcap/config.yaml -ENV CAP2_CONFIG=/mcap/config.yaml -RUN mkdir -p /mcap/out +RUN cap2 run install + CMD ["bash"] \ No newline at end of file diff --git a/containers/docker/latest/mcap_config.yaml b/containers/docker/latest/mcap_config.yaml index fa8b7e83..6ed2b1d6 100644 --- a/containers/docker/latest/mcap_config.yaml +++ b/containers/docker/latest/mcap_config.yaml @@ -1,4 +1,6 @@ # This is the config file that is used in the MCAP docker container out_dir: out -db_dir: dbs \ No newline at end of file +db_dir: dbs +conda_spec_dir: /mcap/conda/config/envs +conda_base_path: /mcap/conda/vendor/conda \ No newline at end of file diff --git a/setup.py b/setup.py index c9e6db4f..4379e27c 100644 --- a/setup.py +++ b/setup.py @@ -3,7 +3,7 @@ setuptools.setup( name='cap2', - version='0.4.1', + version='0.5.3', description="CAP2", author="David C. Danko", author_email='dcdanko@gmail.com',