使用docker时virtualenv是否达到目的(在生产中)?
对于开发,当涉及到依赖项时,我们使用virtualenv进行隔离开发。从这个问题来看,似乎建议在virtualenv中部署Python应用程序。
现在,我们开始使用docker进行部署。这提供了一个更隔离的环境,因此我质疑docker容器内virtualenv的使用。对于单个应用程序,我不认为virtualenv有目的,因为docker已经提供了隔离。在将多个应用程序部署在单个docker容器上的情况下,我确实认为virtualenv具有用途,因为这些应用程序可能具有冲突的依赖关系。
在Docker容器中部署单个应用程序时应使用virtualenv吗?
docker应该包含多个应用程序还是每个容器仅包含一个应用程序?
如果是这样,那么在部署具有多个应用程序的容器时是否应该使用virtualenv?
回答:
Virtualenv是在docker之前创建的。今天,由于以下原因,我倾向于docker而不是virtualenv:
- Virtualenv仍然意味着消费您产品的人们需要下载鸡蛋。有了docker,他们得到了“已知有效”的东西。没有任何附加条件。
- Docker的功能远不止virtualenv(例如,当您拥有需要不同Python版本的产品时,创建一个干净的环境)。
Docker的主要缺点是对Windows的支持不佳。对于Windows 10版本,情况发生了变化。
至于“每个容器有多少个应用程序”,通常的策略是1。
以上是 使用docker时virtualenv是否达到目的(在生产中)? 的全部内容, 来源链接: utcz.com/qa/410376.html