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

将虚拟环境项目从本地迁移到服务器(flask项目),是否必须再次安装依赖项?

宋勇
2023-03-14
问题内容

我已经在本地计算机上的虚拟环境中创建了Flask应用程序,可以在本地运行它 (http://localhost:5000)

然后,我将此项目放入存储库中,然后转到服务器并git clone此项目。

我的本地计算机和服务器上的所有文件都是相同的。

然后,我想通过尝试在服务器上测试此虚拟环境 .venv/bin/active

但是我遇到了一个错误,它说我没有烧瓶!

Traceback (most recent call last):
  File "__init__.py", line 1, in <module>
    from flask import Flask
ImportError: No module named flask

我假设我必须先在虚拟环境中初始化某些东西?-像安装所有依赖项一样,还是必须pip install flask再次?-(这样做会很有趣…)

谢谢。


问题答案:

通常, python环境不能跨机器移植

这意味着您不能可靠地期望跨计算机移植 虚拟环境
。如果要在不同的操作系统之间移动内容,则尤其如此。例如,在Windows中创建的虚拟环境在Linux中将无法使用。

同样,在OSX中创建的虚拟环境在Linux中将无法使用。有时,您可以获得Linux> Linux兼容性,但这是偶然的,因此并不依赖于此。

原因很多-有些库需要针对本机扩展构建,其他一些则需要兼容的系统库才能正常工作,等等。

因此,最可靠的工作流程如下:

  1. 可以 (但我建议您反对)将虚拟环境与项目放置在同一目录中。如果这样做,请确保不要将虚拟环境根目录添加到源控制系统中。最好将虚拟环境与源代码分开(有关单独管理虚拟环境的好方法,请参阅virtualenvwrapper项目项目)。

  2. 应该 通过运行 创建需求文件pip freeze > requirements.txt。保持此文件更新并将其添加到您的源代码管理系统中。在目标系统中,只需创建一个 空的 虚拟环境,然后pip install -r requirements.txt确保正确安装了所有要求。这样做将确保还构建并安装了任何本机扩展。



 类似资料:
  • 迁移数据库ORM层 迁移模板Blade 迁移分页 迁移验证器 迁移Cache

  • 数据库 模板类 验证器 缓存类

  • 安装包时(通过使用python setup.py install),依赖项从python包索引(pypi.python.org)获取。但我的目标主机无法访问internet。我已将依赖项放在本地目录下,如下所示。 通过运行?

  • 问题内容: 由于办公室人员的变动,C#专业知识的水平急剧下降,现在有更多的Java开发人员。至此,高层人士正在考虑将用C#编写的现有.NET项目转移到Java世界中。 除了从头开始完全出现 的明显问题之外,该公司还可以通过哪些可行的方法成功地将项目从.NET C#移植到Java? 问题答案: 这里是要考虑的事情: 这是大项目吗?如果是,请尝试使用C# 这个中型项目是否包含组件?如果否,请尝试使用C

  • 本文向大家介绍django项目环境搭建及在虚拟机本地创建django项目的教程,包括了django项目环境搭建及在虚拟机本地创建django项目的教程的使用技巧和注意事项,需要的朋友参考一下 1.Python虚拟环境创建 首先我们为什么要创建虚拟环境呢?因为不同的项目所依赖的环境不一样,他们需要不同的第三方库等等。为了避免冲突,所以我们要创建虚拟环境,在次此我用的的Linux ubuntu和pyc

  • 使用validation验证器 仓库地址: validation 安装 composer require illuminate/validation 我们先单例validation验证器 namespace App\Vendor\Validators; use Illuminate\Validation\Factory; class Validator extends Factory {