我是使用Docker的新手,所以这对于某些人可能是显而易见的。我正在运行Ubuntu 18.04TLS。
我想在镜像中安装软件包“python3-protobuf”。我尝试使用Dockerfile中的以下行执行此操作:
...
RUN apt-get update && \
apt-get install -y --no-install-recommends \
python3-protobuf \
<some other packages to be installed>
...
当我运行'docker build -t myImageName'时,我收到消息:
E: Unable to locate package python3-protobuf
我正在安装许多软件包,但这是唯一给我造成问题的软件包。
我知道软件包名称是正确的,因为在终端中,当我“适当搜索”它时,就可以找到它。此外,在dockerfile中,我建议执行“更新”和“安装”步骤。所以应该找到它。任何想法为什么不呢?
最佳答案
@banuj回答了这个问题。
软件包“python3-protobuf”从Ubuntu 18.04及更高版本开始可用。我拍摄的基本镜像是使用ubuntu 16.04。
我有两种解决方法:
我最终使用了选项二。
关于docker - Docker为什么找不到现有软件包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56022225/