当前位置: 首页 > 面试题库 >

人们为什么在docker容器中创建virtualenv?

欧阳元魁
2023-03-14
问题内容

您可以在几秒钟内用Dockerfile构建一个容器,那么为什么人们需要在Docker容器内安装虚拟环境?

就像虚拟机中的“虚拟机”?


问题答案:

我正在Docker中使用virtualenvs,我认为有以下几个原因:

  1. 您可能想将应用程序与系统的python软件包隔离
  2. 您可能想运行自定义版本的python,但仍保持系统软件包不变
  3. 您可能需要针对特定​​应用安装的软件包进行精细控制
  4. 您可能需要运行具有不同要求的多个应用程序

我认为这些都是pip install virtualenv在安装结束时添加一些合理的好理由!:)



 类似资料:
  • -----编辑----- 这个问题Docker映像和容器之间有什么区别?没有回答我的问题。 我的问题是:为什么我们需要从图像而不是从DockerFile创建容器?首先从Dockerfile创建映像,然后再创建容器的目的/好处是什么?

  • 我从Fedora通过Dockerfile制作了一个简单的图像(最初为320 MB)。 添加了Nano(这个1MB大小的微小编辑器),图像的大小上升到了530MB。我在上面添加了Git(大约30 MB),然后我的图像大小的sky-rockets达到了830 MB。 这不是疯了吗? 我已经尝试导出和导入容器来删除历史/中间图像。这一努力节省了25 MB,现在我的图像大小是804 MB。我也尝试在一个上

  • 我使用Win 10 Pro N(版本1709)作为开发机器,使用Windows Server 2016 Standard(版本1607)作为生产服务器。 我目前正在开发一个使用MongoDb作为数据库的ASP.NET Core2应用程序。 几天前,我第一次偶然发现了这个想法,将MongoDb作为Docker映像运行。 这是个好决定吗?或者在我的场景中我应该使用Linux容器而不是Windows容器

  • 但是只有使用运行它才允许用户通过终端与容器化进程交互。所以我想知道,“分配一个伪tty”是什么意思,因为即使在没有的情况下运行,进程写入的内容也会传递到终端(进程将有一个管道作为stdout,而不是tty)? 我读到这个答案说,您可以运行来获得“终端支持”,例如文本着色等。我已经做了以下实验: 并运行此映像,不使用。因为我是从终端运行它(总是从某个终端运行,不是吗?)我能看到一个红色的“你好世界”

  • 本文向大家介绍创建一个MySQL Docker容器,包括了创建一个MySQL Docker容器的使用技巧和注意事项,需要的朋友参考一下 Docker容器化的最重要功能之一是,它创建了一个有限的环境,用于在安装所有必需的依赖项和软件包的情况下运行应用程序。大多数应用程序需要后端数据库来存储数据点。Oracle提供了可在容器中运行MySQL的Docker映像,因此它成为测试数据库应用程序的理想选择。测