在Docker容器中安装了apt-get install的软件包在哪里?
我试图findlibgsl.so
库成功安装后的Docker容器。
当我用docker run -it container/image bash
运行一个交互式shell并尝试find它时, find / -iname "*libgsl*"
我什么也没得到(该工具试图在/ usr / lib /下find它)。 似乎对于另一个成功安装的库(例如libjpeg62)也是如此。
那么,一般来说, 这些库被安装在哪里?
我正在MacOS上运行VBox的Docker。 这是Dockerfile
文件:
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
我运行了错误的容器(没有使用正确的标签),我没有安装库。 更改标签后,我发现这些库没有问题。 软件包安装在默认位置(在本例中为/ usr / lib /)。
由于phusion/baseimage
使用Ubuntu
询问包pipe理包中包含的文件:
dpkg -L libgsl0ldbl
这显示文件只是复制到这些位置。 这些文件被标记为由包pipe理pipe理