Skip to content

Commit

Permalink
Functional docker container build and run with test data
Browse files Browse the repository at this point in the history
  • Loading branch information
jsanjak committed Jul 24, 2023
1 parent 9d5df3a commit 738fadd
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 5 deletions.
12 changes: 7 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
FROM continuumio/miniconda3
FROM continuumio/miniconda3:4.11.0
RUN apt-get update

#NOTE: I don't know whether the --fix-broken is actually needed
RUN apt-get -y install gcc libdeflate-dev libcurl4-openssl-dev --fix-broken
RUN apt-get -y install gcc zip libdeflate-dev libcurl4-openssl-dev --fix-broken

WORKDIR /cgr-dev
WORKDIR /home

RUN mkdir GwasQcPipeline
RUN mkdir data

WORKDIR /cgr-dev/GwasQcPipeline
WORKDIR /home/GwasQcPipeline

ENV PYTHONPATH=${PYTHONPATH}:${PWD}

Expand All @@ -30,6 +31,7 @@ RUN poetry install --without dev
#RUN pre-commit install
#RUN pre-commit run

WORKDIR /cgr-dev

WORKDIR /home/data

ENTRYPOINT [ "cgr" ]
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,16 @@ If you use this workflow in a paper, please cite the URL of this repository (htt

The documentation of this pipeline is at https://nci-cgr.github.io/GwasQcPipeline/

### Deploying with Docker

```
docker build -t gwas_qc_pipe .
```

```
docker run -v $(pwd):/home/data -i -t gwas_qc_pipe snakemake -k --use-conda -npr
```

### LOG
- add Plink GWAS for case-controls
- add `sex_chr_included` parameter to config.yml. If `false` sex concordance check step is skipped.
Expand Down

1 comment on commit 738fadd

@n8sean
Copy link
Contributor

@n8sean n8sean commented on 738fadd Jul 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dockerfile
a) line 6: install GRAF v2.4 here(?)
b) line 18: Docker is a container that is a ~venv so no need to install new venv into this container.
c) line 25: tells Poetry to use an existing venv instead of create a new one.
d) line 29: this is related to Sphinx documentation build(?)
e) line 30: pytest is for unittesting; not needed outside of the DEV environment; sma eof rpre-commit.
f) line 37: also learn how to access the container into its command line interface, where you could execute explicit commands against the running container

Readme.md
a) line 33: because the codebase will not update frequently, we would consider a container registry for this artifact, where the pipeline fetches it, to run it when needed.

Please sign in to comment.