gitter-lab / SINGE

Gene regulatory network reconstruction from pseudotemporal single-cell gene expression data
MIT License
11 stars 6 forks source link

Docker build error #41

Closed adyprat closed 4 years ago

adyprat commented 4 years ago

Hi,

I'm working on integrating the latest SINGE release into BEELINE repo. However, when I tried building a docker image using the Dockerfile provided, I'm getting the following error:

Logs
:~/SINGE/docker$ docker build -t singe -f Dockerfile .
Sending build context to Docker daemon  5.632kB
Step 1/8 : FROM amarburg/matlab-runtime
 ---> 32585984ab81
Step 2/8 : RUN apt-get update &&     apt-get -y install libxt6 bzip2
 ---> Running in ab8830c0e025
Get:1 http://security.debian.org stable/updates InRelease [39.1 kB]
Get:2 http://deb.debian.org/debian stable InRelease [122 kB]
Get:3 http://deb.debian.org/debian stable-updates InRelease [49.3 kB]
Get:4 http://security.debian.org stable/updates/main amd64 Packages [120 kB]
Get:5 http://deb.debian.org/debian stable/main amd64 Packages [10.6 MB]
Get:6 http://deb.debian.org/debian stable-updates/main amd64 Packages.diff/Index [1720 B]
Get:6 http://deb.debian.org/debian stable-updates/main amd64 Packages.diff/Index [1720 B]
Get:7 http://deb.debian.org/debian stable-updates/main amd64 Packages [6292 B]
Reading package lists...
W: Conflicting distribution: http://security.debian.org stable/updates InRelease (expected stretch but got buster)
W: Conflicting distribution: http://deb.debian.org/debian stable InRelease (expected stretch but got buster)
W: Conflicting distribution: http://deb.debian.org/debian stable-updates InRelease (expected stretch-updates but got buster-updates)
E: Could not open file /var/lib/apt/lists/deb.debian.org_debian_dists_stable-updates_main_binary-amd64_Packages.diff_Index - open (2: No such file or directory)
The command '/bin/sh -c apt-get update &&     apt-get -y install libxt6 bzip2' returned a non-zero code: 100

I'm running this on Ubuntu 18.04 and Docker version 18.09.5, build e8ff056. I also got this error when I used the Dockerfile provided in the release version 0.3.0.

I'm not sure if this is a known issue, but README file tells me that the Docker support is still being improved. Do you may be have an estimate of when this would be completed? Please let me know if there is any other information I can provide about the issue that would be useful to you.

agitter commented 4 years ago

Thanks for testing the Dockerfile @adyprat.

I checked out v0.3.0 and can reproduce this error when I run docker build --no-cache -t singe -f docker/Dockerfile . I did not see this earlier in my local testing because the image caches were skipping this build step. The same was true in our Travis CI builds because we build using the tmp tagged image from Docker Hub: https://github.com/gitter-lab/SINGE/blob/f36d1c87c4e79f25202d41b2b16748aa95ff655c/.travis.yml#L10

I'll troubleshoot this issue and work on an updated Dockerfile. This https://github.com/romaricp/kit-starter-symfony-4-docker/issues/10#issuecomment-485260293 seems to fix the problem for me, but I want to test it more.

In the bigger picture, the next SINGE release (v0.4.0) will likely be the first one that is ready to integrate directly into BEELINE. Are there any BEELINE-related deadlines or timelines that we should be aware of that would require accelerating our next release?

Release v0.3.0 had a proof-of-concept of running SINGE inside Docker, but it was not set up for easy general use on new input data. The next release will make it much easier to run SINGE with user-provided data. To run the complete SINGE algorithm (multiple GLG runs with different hyperparameters and subsamples of the data followed by aggregation) we'll have syntax that is something like:

docker run agitter/singe standalone data gene_list outdir hyperparameter_file

where standalone is a SINGE mode that runs the full pipeline. We also plan a GLG and aggregate mode in case users want to parallelize the GLG calls across multiple servers (like we do).

Would that interface work for BEELINE?

agitter commented 4 years ago

@adyprat I made a pull request to fix this specific problem and close this issue. However, we can still use this issue to discuss SINGE, Docker, and BEELINE more generally.