Skip to content

Provide a simple way to build cosmo with Docker #13

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: VARI
Choose a base branch
from
Open

Provide a simple way to build cosmo with Docker #13

wants to merge 1 commit into from

Conversation

bingbig
Copy link

@bingbig bingbig commented Nov 24, 2017

It's not easy to install those softwares, since I failed a lot of times in CentOS 6 / 7. But finally I successfully installed it in ubuntu. So, I put the Dockerfile here for anyone who needs.

You need to build the docker image by yourself, that could take a while.

HowTo

mkdir docker
cp Dockerfile docker/
cd docker/

docker build -t 'ubuntu:cosmo' .

docker run -it -v /directory_to_your_local_data:/root/data ubuntu:cosmo bash

Note: Some ERROR were ignored with exit 0 in Dockerfile when build boost_1_54_0 and tclap

@bingbig bingbig changed the title Provide a simple to build cosmo with Docker Provide a simple way to build cosmo with Docker Nov 24, 2017
@mmuggli
Copy link
Contributor

mmuggli commented Apr 4, 2019

Thanks for providing this. One challenge is that VARI should be built with compile time parameters specific to the experiment one wants to run. This is because the way it's implemented, the amount of space allocated for each k-mer and each color set associated with a k-mer is determined at compile time. While one could build a docker image to support up to 64-mers and a large number of colors (e.g., 16,000) this would mean a lot of wasted space for smaller images.

One solution would be to offer a variety of docker images, each compiled for different configurations (e.g., one for up to 32-mers and up to 8,000 colors, another for up to 64-mers with 8,000 colors, etc). Another option would be to include the compiler and have everything else prebuilt.

I'm open to other suggestions for how to handle this. Perhaps modern C++ has some way to build this such that these limits are specified/inferred at runtime rather than compile time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants