如何解决为什么我们需要在 Dockerfile 中有一个 Alpine 或 Ubuntu Base Image?
我是 Docker 世界的新手。我想通过举个例子来问我的问题。假设有一家公司在其服务器上使用 Windows 操作系统。要运行 Docker 容器,他们需要有一个正确的 Linux 环境。因此,他们利用虚拟化技术创建了一个具有 Linux 环境的虚拟机来运行这个容器。在这里,这个 Linux 操作系统已经作为访客操作系统,那么为什么我们需要/安装 alpine 或 Ubuntu 作为 docker 文件中的基本映像?如果我的理解有误,请您纠正我。谢谢。
解决方法
Docker Container
中的所有进程都是隔离的。
因此,按照设计,您的主机程序在 Docker 映像中不可用。
从技术上讲,您不需要 Alpine
或 Ubuntu
Linux 基础映像。例如,您可以使用 Scratch
图像:https://hub.docker.com/_/scratch
docker 的理念是为应用程序提供完全隔离的完全相同的环境,他们不强制使用任何基础镜像。
不过最好使用官方基础镜像,因为:
- 您有很多关于常见发行版的教程
- 您有许多随基础映像一起提供的预装工具。
- 官方图片由社区维护,因此他们会为您解决问题。
Docker 使用分层设计来最小化图像的大小。更多信息请访问:https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。