Linux dependencies in Docker file
2
0
Entering edit mode
9 months ago
mrashad ▴ 80

Dears,

I am building a docker file and need to insert package dependencies and system dependencies:

1- How do I install the Bioconductor package with its dependencies? Are they installed automatically if I mention the version of the package?

2- If I have packages with GitHub source, I need to search for their repositories automatically in R, is it possible to use the "remotes" package?

3- If I have the following tables for Debian dependencies, which exact column should be used as dependency?

descriptive_photo

I mean should I make for example in the second package "actuar"

RUN apt-get install -y \
liblapack.so.3.7.1

OR

RUN apt-get install -y \
liblapack3

OR

RUN apt-get install -y \
liblapack-dev

Thanks and Regards,

linux docker • 527 views
ADD COMMENT
2
Entering edit mode
9 months ago
ATpoint 85k

My recommendation is to use bioconductor/bioconductor_docker:RELEASE_3_18 which is the current Bioconductor official Docker image. It comes with pretty much any dependency you can think of. From there, just use regular BiocManager::install(). I am using this image for my work for almost 2 years now and cannot recall the last time I had to add a dependency that was not preinstalled. If it is still needed then simply use apt-get as you akready do. Here is the Bioc GitHub for this image to take inspiration from in terms of how they use Dockerfiles: https://github.com/Bioconductor/bioconductor_docker

ADD COMMENT
1
Entering edit mode
9 months ago

1 - you can use conda/mamba/micromamba within docker to install pre-compiled R packages. I would recommend this.

2 - You'll need to try this out on a case by case basis, this is not specific

3 - Your image did not work.

4 - RUN apt-get install -y liblapack3 liblapack-dev

Do not use the actual file eg liblapack.so.3.7.1

If you have a debian or ubuntu etc system at hand, you can check the package names to make sure they are correct with apt-get search liblapack3

I would also recommend checking other people's Dockerfiles on github for examples.

ADD COMMENT

Login before adding your answer.

Traffic: 2522 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6