【问题标题】:How to use docker as a container on my system如何在我的系统上使用 docker 作为容器
【发布时间】:2020-07-19 18:56:52
【问题描述】:

使用 Ubuntu 18.04。

是否可以使用 docker 简单地“克隆”我的系统并使用我所有已安装的库?

我要做的就是开始使用 docker 图像进行图像处理。 我的系统上安装了 Tensorflow 2.0-gpu,没有任何容器/虚拟环境。 而且我只想“复制”当前系统及其所有工作库,这样如果我更新一些依赖项,或者尝试升级 keras/tensorflow 或任何其他包并得到一些奇怪的错误,我没有尝试找出问题所在,然后回退并从我的基本系统创建一个新的、新鲜的 docker 映像。

我见过的所有 docker 映像文件和教程总是以这种方式开始: FROM "Some os/python version/..." ,我真的不想要,我只想使用 FROM "this os with its all安装的东西”。

谢谢!

【问题讨论】:

    标签: docker ubuntu-18.04 tensorflow2.0


    【解决方案1】:

    很抱歉打扰您,但简短的回答是

    更长一点是 docker 不是像任何虚拟机那样的虚拟化方式,而是更像共享主机操作系统以运行分离的进程集(由内存和其余部分隔离)。

    这意味着它使用主机操作系统处理程序来写入驱动器并调用内存等。Docker 不像虚拟机软件那样为容器做虚拟硬件。因此,您无法将操作系统克隆到其中。

    而且因为 Docker 使用主机操作系统来做事 - 它实际上节省了 CPU 资源,而不是在每个容器中执行操作系统逻辑。 - 这就是为什么它与经典 VM 相比性能有所提升。

    这就是为什么出于生产目的,从最空的 (ubuntu) 图像构建图像绝对值得 - 在生产中您永远不需要图像编辑工具。因此,如果有一天您需要扩大规模,您永远不会花费超过软需求的内存(例如在 Kubernetes 中,您可以根据利用率指标自动扩大和缩小 Docker 容器的数量,但这是最终目标)。

    但是大量的 VM 软件包提供了将物理 pc 克隆到映像中的逻辑,所以如果你需要它,你可以利用它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-12
      • 1970-01-01
      • 2019-03-24
      • 1970-01-01
      • 1970-01-01
      • 2019-09-27
      • 1970-01-01
      相关资源
      最近更新 更多