I'm trying to locate the libgsl.so
library in a Docker container after installing it successfully .
When I run an interactive shell with docker run -it container/image bash
and try to find it find / -iname "*libgsl*"
I get nothing (the tool tries to find it under /usr/lib/). It seems that the same is true for another successfully installed libraries (eg libjpeg62).
So, generally, where are these libraries being installed ?
I'm running Docker with VBox in MacOS. Here is the Dockerfile
file:
FROM phusion/baseimage
# Install dependencies
RUN apt-get update && apt-get install -y \
libgsl0ldbl \
curl \
gsl-bin
# Installs preseq from sources into /opt/
ENV PRESEQ_RELEASE=2.0
ENV PRESEQ_URL=http://smithlabresearch.org/downloads/preseq_linux_v${PRESEQ_RELEASE}.tar.bz2
ENV DEST_DIR=/opt/
# Download preseq; untar & decompress; remove tr.bz2 file; compile & install preseq; remove unnecessary files
RUN curl -SLo ${DEST_DIR}/preseq_v${PRESEQ_RELEASE}.tar.bz2 ${PRESEQ_URL} && \
tar -xf ${DEST_DIR}/preseq_v${PRESEQ_RELEASE}.tar.bz2 -C ${DEST_DIR} && \
rm -f ${DEST_DIR}/preseq_v${PRESEQ_RELEASE}.tar.bz2
ENV PATH=${DEST_DIR}/preseq_v${PRESEQ_RELEASE}:$PATH
CMD ["preseq"]
UPDATE
I was running the wrong container (not using the right tag) where I didn't have the library installed. After changing the tag, I found the libraries without a problem. Packages are installed in the default locations (in this case /usr/lib/).
Since phusion/baseimage
use Ubuntu
Ask the package management what files the package contains:
dpkg -L libgsl0ldbl
This shows the files simply copied to those locations. These files are marked as managed by the package management
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.