以下是我系统中存在的一些docker镜像:
root@labadmin-VirtualBox:/home/labadmin# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 14.04 1e0c3dd64ccd 13 days ago 187.9 MB
ubuntu latest 45bc58500fa3 5 weeks ago 126.9 MB
我想在容器中安装“smartmontools”。但是它会引发错误“无法找到包smartmontools”,如下所示:
root@labadmin-VirtualBox:/home/labadmin# docker run -it 1e0c3dd64ccd
root@b4954826a227:/# apt-get install smartmontools
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package smartmontools
root@b4954826a227:/# exit
exit
但是,当我在Ubuntu机器中执行相同操作时,它就可以工作了。
root@labadmin-VirtualBox:/home/labadmin# apt-get install smartmontools
Reading package lists... Done
Building dependency tree
Reading state information... Done
***smartmontools is already the newest version.***
0 upgraded, 0 newly installed, 0 to remove and 542 not upgraded.
root@labadmin-VirtualBox:/home/labadmin#
Ubuntu容器和Ubuntu系统有什么区别?是什么阻碍了将软件包安装在容器中?
我的要求是使用Ubuntu OS作为基本镜像创建一个包含一些实用程序的容器:
FROM ubuntu:14.04
RUN apt-get update && apt-get install -y smartmontools
最佳答案
当您通过手动运行容器进行测试时,您不会使用apt-get update
更新缓存,因此Unable to locate package
错误
但是您的Dockerfile示例应该可以工作
关于ubuntu - 无法在Docker容器中安装软件包,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40302745/