python - 使用基本映像和使用 apt 有什么区别?
问题描述
我已经阅读了这个问题,并且我知道您需要某种基础来构建您的 docker 映像。但是,我仍然看不到像python这样的 docker 图像的目的。
为什么我需要这个:
FROM python:latest
当我能做到这一点时:
FROM ubuntu
RUN apt install python3
假设我想运行一个使用 apache 托管 python 服务器的容器。有什么区别
- 使用 apache 基础镜像并手动安装 python
- 使用 python 基础镜像并手动安装 apache
- 使用 ubuntu 基础镜像并手动安装
解决方案
在给定的示例中差异很小,因为最终您将得到相同的东西,但使用的命令略有不同。
当您需要使用最新或特定版本的软件时,情况会发生变化。所需的版本可能在标准 Ubuntu 存储库中不可用,或者可能会有延迟。
您从使用python
或apache2
作为基础获得的是能够在发布后仅用一行代码选择您需要的版本。
更重要的是,可能不需要将 python 和 apache 结合起来。Docker 容器通常用于托管单个进程,更常见的是在一个容器中使用 python 后端,在另一个容器中使用 web 服务器作为代理。
在这种情况下,您根本不关心安装 apache,您只需在运行时将其配置安装到容器中。消除 Web 服务器,您只需要专注于应用程序及其依赖项,因此最终您将拥有更少的代码并更容易维护它。
推荐阅读
- java - 使用 Selenium Java 从网页中获取状态码
- c# - EF Core 批量插入错误,可空双精度
- javascript - 为什么 fetch 返回空 opj 到 server.js 文件
- xamarin.forms - 如何在 WKWebView 中使用 Stripe JS 接受 Apple Pay?
- javascript - jQuery 自动移动到具有最大到达值的下一个输入
- python - LSTM 模型问题
- bash - grep 循环返回每个文件而不是每个搜索词的输出
- r - R markdown:如何紧凑地打印数据框
- c# - 无法打开证书存储
- python - 如何将单引号列表与双引号列表转换