Docker容器python环境与python虚拟环境
我主要用python编程,并且对虚拟环境有一些经验。我是新的软件,并开始寻找docker来运行我的代码。我想了解它的功能和工作原理Docker容器python环境与python虚拟环境,python,docker,containers,virtual,environment,Python,Docker,Containers,Virtual,Environment,我主要用python编程,并且对虚拟环境有一些经验。我是新的软件,并开始寻找docker来运行我的代码。我想了解它的功能和工作原理 根据我的理解,docker容器就像虚拟环境,在执行时运行一组指令,可以将其中包含的所有内容视为单个实体(这样它或其他内容就不会彼此有条件了?)。当我读到更多关于容器的内容时,它们听起来非常完美,可以消除对虚拟环境的任何需求,但仍然不确定。如果您能对此进行澄清,我将不胜感激,因为我还无法在网上找到任何内容。我更愿意将容器视为操作系统之上的操作系统。你可以用谷歌搜索关于
根据我的理解,docker容器就像虚拟环境,在执行时运行一组指令,可以将其中包含的所有内容视为单个实体(这样它或其他内容就不会彼此有条件了?)。当我读到更多关于容器的内容时,它们听起来非常完美,可以消除对虚拟环境的任何需求,但仍然不确定。如果您能对此进行澄清,我将不胜感激,因为我还无法在网上找到任何内容。我更愿意将容器视为操作系统之上的操作系统。你可以用谷歌搜索关于docker的很多信息,但是如果用简单的语言来说,docker是一个薄层,它运行在你的操作系统之上,使用你的操作系统的资源(不像VM),并运行它自己的封闭环境。python虚拟环境的主要目的是为每个项目隔离环境,这意味着每个项目都可以有自己的依赖项,而不管其他项目有什么依赖项 但是对于docker,您可以将每个docker映像视为一个独立的环境,您不需要在Dockerfile中创建或维护虚拟环境,因为Dockerfile应该基于特定版本的python,并且应该运行单个项目 简而言之,如果你有3个项目需要
- 项目A需要Python 3.6
- 项目B需要Python 3.7
- 项目C需要Python 3.8
- 来自python:3.6的项目A
- 项目B
来自python:3.7
- 来自python:3.8的项目C
此外,包含许多python虚拟环境的Docker非常常见;每个服务有一个环境。因此,即使是docker图像也可以包含python venv查看他们的101系列,这非常好。此外,如果你想更深入地理解,请注意这一点,这是否回答了你的问题?Docker的隔离环境还将主机的本地文件系统与容器的文件系统分开;对于许多典型应用来说,这是一个问题。如果您正在积极开发,这种隔离还意味着容器有一个独立于IDE的文件系统,这会给您带来不便。是docker更重,我应该尽可能选择python虚拟环境吗?