Comments (6)
I think it's preferable to have Dockerfile included in the repository. Alternatively, it should be mentioned from where we can get this Dockerfile in order to make some changes and rebuild the image ourselves. For example I want to use RSEM tool with STAR mapper . The Docker image (https://cloud.docker.com/u/biowardrobe2/repository/docker/biowardrobe2/rsem/tags) includes three mappers: STAR, Bowtie, Bowtie2. I don't need all of them. I might want to rebuild this image with only STAR installed
from bio-cwl-tools.
The software version in the Dockerfile should be hardcoded.
I would also add some metadata to the Dockerfile (see example below).
#################################################################
# Dockerfile
#
# Software: FastQC
# Version: v0.0.1
# Description: Tool to spot potential problems in high througput sequencing datasets
# Website: http://www.bioinformatics.babraham.ac.uk/projects/fastqc
# Provides: FastQC 0.11.8
# Base Image: ubuntu:18.04
# Build Cmd: docker build --rm -t cwlhub/fastqc:v0.0.1 .
# Pull Cmd: docker pull cwlhub/fastqc:v0.0.1
# Run Cmd: docker run --rm -ti cwlhub/fastqc:v0.0.1 fastqc --version
#################################################################
The Version
field is the version of the docker image (not the version of the installed program).
All installed programs with their versions should be mentioned in the Provides
field.
Additionally, I would be nice to use well known base images and install all required dependencies for each image separately, avoiding inheritance from the docker images of other tools. Otherwise it will cause a lot of "pain" while updating some R packages, for example :)
from bio-cwl-tools.
Also, Dockerfile and all custom scripts, that should be copied to the image, should be placed in a separate folder. Docker uses the current directory as the context for building images, so the smaller it is the "faster" it builds.
from bio-cwl-tools.
Biocontainers already has the Dockerfile, so it seems redundant to include an extra copy somewhere else. I like the idea of having the CWL and Dockerfile together though. Perhaps include the CWL alongside the Dockerfile? e.g. https://github.com/BioContainers/containers/blob/master/bamtools/2.4.0/Dockerfile
from bio-cwl-tools.
Then, I think, it's better to keep Dockerfile alongside CWL file only in case it was really necessary to use some custom container.
from bio-cwl-tools.
Would it be wise to just push the container to the biocontainers repo if something custom is needed?
from bio-cwl-tools.
Related Issues (20)
- Contributing HOT 28
- Pull request template HOT 1
- A call for a bio-cwl-tools team HOT 9
- Add RSEM HOT 1
- Consider supporting Top 100 packages in Bio-conda
- subread/featureCounts: mapped_reads should have a secondaryFiles entry for the required index
- copy resource reqs from Galaxy's TPV
- Migrate all the tools from https://github.com/common-workflow-language/workflows
- Add script to generate .dockstore.yml
- Add "intent" fields with EDAM Operation values where possible
- register these tool descriptions at bio.tool HOT 1
- old containers neeed updating HOT 1
- Output in Kallisto-quant not working HOT 3
- Update CI to only run on changed files. HOT 2
- ci.py doesn't work on the release branch HOT 1
- fastq_dump.cwl might have some problems when running without Internet connection HOT 6
- s:mainEntity contents shoud go under SoftwareRequirement.packages HOT 1
- VARSCAN and SAMTools_mpileup CWL tool.
- Allow public domain donations from US Federal Government employees
- STAR cwl is pointing to the hisat container HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bio-cwl-tools.