Docker容器无法定位Zip包?
所有Ubuntu wiley存储库都添加到我的docker文件中,即Docker容器无法定位Zip包?,docker,Docker,所有Ubuntu wiley存储库都添加到我的docker文件中,即main,universe,等等,并出现在我的docker图像中。但是,以下Dockerfile中的apt get install无法找到任何ZIP/UnZIP包。最后是错误日志 如何安装这些常见的zip软件包?至少p7zip完整和rar Dockerfile FROM ubuntu:15.10 CMD ["bash"] RUN add-apt-repository main && \ add-apt-r
main
,universe
,等等,并出现在我的docker图像中。但是,以下Dockerfile中的apt get install无法找到任何ZIP/UnZIP包。最后是错误日志
如何安装这些常见的zip软件包?至少p7zip完整
和rar
Dockerfile
FROM ubuntu:15.10
CMD ["bash"]
RUN add-apt-repository main && \
add-apt-repository universe && \
add-apt-repository restricted && \
add-apt-repository multiverse
RUN apt-get update -y && \
apt-get upgrade -y && \
apt-get dist-upgrade -y && \
apt-get -y autoremove && \
apt-get clean
RUN apt-get install p7zip \
p7zip-full \
p7zip-rar \
unace \
unrar \
zip \
unzip \
xz-utils \
sharutils \
rar \
uudeview \
mpack \
arj \
cabextract \
file-roller \
&& rm -rf /var/lib/apt/lists/*
抛出错误
E: Unable to locate package p7zip-full
E: Unable to locate package unace
E: Unable to locate package unrar
E: Unable to locate package zip
E: Unable to locate package unzip
E: Unable to locate package sharutils
E: Unable to locate package rar
E: Unable to locate package uudeview
E: Unable to locate package mpack
E: Unable to locate package arj
E: Unable to locate package cabextract
E: Unable to locate package file-roller
尝试使用此
Dockerfile
(您的Dockerfile没有我在之前的评论中告诉您的内容):
它可以工作,并安装zip和p7zip
$ docker build -t mytest .
$ docker run -d -ti --name mytest mytest /bin/bash
$ docker exec -ti mytest /bin/bash
root@f01fc3456a2a:/# zip
root@f01fc3456a2a:/# p7zip
根据Docker最佳实践 @gile的答案可以通过以下方式改进:
- 在单个层中使用apt get update和install
- 避过 升级
FROM ubuntu:15.10
RUN apt-get -y update \
&& apt-get -y autoremove \
&& apt-get clean \
&& apt-get install -y p7zip \
p7zip-full \
unace \
zip \
unzip \
xz-utils \
sharutils \
uudeview \
mpack \
arj \
cabextract \
file-roller \
&& rm -rf /var/lib/apt/lists/*
CMD ["bash"]
我很惊讶你能走那么远。据我所知,ubuntu:15.10映像没有添加apt存储库的
命令。尝试删除关于“添加apt存储库”和关于p7zip rar、UNRR、rar的行,因为它们在ubuntu:15.10中没有安装候选程序。这样你就可以用你列出的其他压缩包来构建图像。我添加了apt-apt-repository
,并做了一些调整。我丢失了Ubuntu wiley的p7zip的ppa seach链接。但是接下来需要知道如何在dockerfile中安装p7zip
的zip软件包
——谢谢格式说明:Github的三重反勾标记在这里不起作用。要格式化代码,只需缩进4个空格即可。我整理了一下这篇文章。谢谢你分享我的技术诀窍。嗯,所以我的问题是别的。这就是为什么仅仅通过添加-qq
它就可以工作的原因?我不再在提供的链接中看到这些信息
FROM ubuntu:15.10
RUN apt-get -y update \
&& apt-get -y autoremove \
&& apt-get clean \
&& apt-get install -y p7zip \
p7zip-full \
unace \
zip \
unzip \
xz-utils \
sharutils \
uudeview \
mpack \
arj \
cabextract \
file-roller \
&& rm -rf /var/lib/apt/lists/*
CMD ["bash"]