![Docker Ubuntu 镜像缺少许多常见的二进制文件](https://linux22.com/image/1521517/Docker%20Ubuntu%20%E9%95%9C%E5%83%8F%E7%BC%BA%E5%B0%91%E8%AE%B8%E5%A4%9A%E5%B8%B8%E8%A7%81%E7%9A%84%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6.png)
我正在将全新安装的 Ubuntu 16.04.1 LTS 与其等效的 Docker 映像/容器进行比较,我注意到 Docker 版本缺少许多典型的二进制文件,例如、、vi
等等。less
ping
仅计算 Docker 容器中一些关键文件夹中的二进制文件:
root@9769637f38c6:/# ls -al /bin | wc -l
89
root@9769637f38c6:/# ls -al /usr/bin | wc -l
236
在全新的 Ubuntu VM 上,我分别获得了 174 个和 650 个二进制文件。
它们为何如此不同?
答案1
docker
据我所知,的主要思想是在小型轻量级容器中运行服务。为此,您不一定需要vi
诸如less
或 之类的程序ping
。如果您正在使用 创建自己的映像,Dockerfile
并且需要其中一个文件(例如用于服务或用于稍后调试),您可以通过在 中使用此行安装其他软件包来添加这些文件Dockerfile
RUN apt -y install vim less iputils-ping