【发布时间】:2018-10-02 03:32:25
【问题描述】:
我想在 docker 容器中安装包 foo 版本 1234。与最新版本相比,我更喜欢它,因为它始终以相同的方式工作。
所以我的 Dockerfile 有这个:
RUN apt-get update && apt-get install -y foo=1234
但是基础镜像是mongodb:4.0.2,在Ubuntu xenial上分层。
当我构建映像时,apt 安装失败,因为它找不到那个版本。我认为 xenial 不支持那个版本。
那么我如何在 xenial 上找到最新支持的软件包 foo 版本?如果我运行apt policy foo,它会显示我正在使用的 ubuntu(仿生)的最新版本,而不是 xenial。
【问题讨论】:
-
我正在寻找一种编程方式来做到这一点。但是也有一种肮脏的方法可以做到这一点:运行容器,shell 进入其中,然后运行
apt-get update && apt-cache policy foo以显示该 ubuntu 版本的最新版本。
标签: docker ubuntu dockerfile apt