云网牛站
所在位置:首页 > Linux编程 > 在Ubuntu 20.04上安装Flask及创建一个最小的应用程序

在Ubuntu 20.04上安装Flask及创建一个最小的应用程序

2020-11-22 15:22:59作者:李全运稿源:云网牛站

本文介绍在Ubuntu 20.04上安装Flask的方法,Flask软件包包含在官方的Ubuntu存储库中,可以使用apt软件包管理器进行安装,这是在Ubuntu 20.04上安装Flask的最简单方法,但不如在虚拟环境中安装那样灵活,同样,存储库中包含的版本可能落后于最新版本的Flask。虚拟环境允许您为不同的Python项目创建隔离的环境,这样,您可以在一台计算机上拥有多个不同的Flask环境,并可以在每个项目的基础上安装模块的特定版本,而不必担心会影响您其他Flask的安装。如果将Flask安装到全局环境中,则只能在计算机上安装一个Flask版本。在本文中,我们将讨论如何在Python虚拟环境中的Ubuntu 20.04上安装Flask。

 

前言

Flask是用于Python的免费开放源微型Web框架,旨在帮助开发人员构建安全、可扩展和可维护的Web应用程序。Flask基于Werkzeug,并使用Jinja2作为模板引擎。

与Django不同,默认情况下,Flask不包含ORM、表单验证或第三方库提供的任何其他功能。Flask在构建时考虑了扩展,这些扩展是为Flask应用程序添加功能的Python软件包。

 

在Ubuntu 20.04上安装Flask

在Ubuntu 20.04上安装Flask及创建一个最小的应用程序

Ubuntu 20.04系统随附Python 3.8,您可以通过键入以下命令验证系统上已安装Python:

$ python3 -V

输出应如下所示:

Python 3.8.5

创建虚拟环境的推荐方法是使用venv模块,该模块由python3-venv软件包提供,运行以下命令以安装软件包:

$ sudo apt install python3-venv

安装模块后,我们准备为Flask应用程序创建虚拟环境。

导航到要存储Python 3虚拟环境的目录,它可以是您的主目录,也可以是用户具有读写权限的任何其他目录。

为Flask应用程序创建一个新目录并切换到该目录:

$ mkdir flask_app && cd flask_app

在目录中运行以下命令以创建虚拟环境:

$ python3 -m venv venv

该命令将创建一个名为venv的目录,该目录包含Python二进制文件,Pip软件包管理器,标准Python库和其他支持文件的副本,您可以为虚拟环境使用任何名称。

要开始使用虚拟环境,您需要使用激活脚本将其激活:

$ source venv/bin/activate

激活后,虚拟环境的bin目录将添加到$PATH变量的开头,Shell的提示符也会更改,并显示当前正在使用的虚拟环境的名称,在这个例子中是venv。

现在已经激活了虚拟环境,使用Python软件包管理器pip安装Flask:

(venv) $ pip install Flask

在虚拟环境中,您可以使用命令pip代替pip3,并使用python代替python3,参考在Ubuntu系统中安装pip3与升级pip3的方法

要验证安装,请运行以下命令,该命令将输出Flask版本:

(venv) $ python -m flask --version

在写本文时,最新的官方Flask版本是1.1.2:

Python 3.8.5

Flask 1.1.2

Werkzeug 1.0.1

注:请注意,到您安装时,Flask版本可能与此示例中显示的版本不同。

 

创建一个最小的应用程序

我们将创建一个简单的hello world应用程序,该应用程序将仅打印“Hello World!”。

打开文本编辑器或Python IDE并创建以下文件,即~/flask_app/hello.py:

from flask import Flask

app = Flask(__name__)

@app.route('/')

def hello_world():

  return 'Hello World!'

代码是这样的:

第一行导入了Flask类。

第二行创建Flask类的新实例。

route()装饰器用于为/路由注册hello_world函数,请求此路由时,将调用该函数,并显示消息“Hello World!”,返回给客户端。

将文件另存为hello.py,然后返回到终端窗口。

我们将使用flask命令运行应用程序,但是在此之前,我们需要通过设置FLASK_APP环境变量来告诉Shell应用程序使用:

(venv) $ export FLASK_APP=hello.py

(venv) $ flask run

上面的命令将启动内置开发服务器。

输出将类似于以下内容:

 * Serving Flask app "hello.py"

 * Environment: production

  WARNING: Do not use the development server in a production environment.

  Use a production WSGI server instead.

 * Debug mode: off

 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

如果您在虚拟机上安装了Flask并希望访问Flask开发服务器,则可以通过flask run命令后附加--host=0.0.0.0来使服务器公开可用。

在网络浏览器中打开http://127.0.0.1:5000,系统将显示“Hello World!”信息。

要停止开发服务器类型,请在终端中按CTRL-C。

完成工作后,通过键入deactivate禁用环境,您将返回到常规shell。

(venv) $ deactivate

 

结论

我们已经向您展示了如何创建Python虚拟环境以及如何在Ubuntu 20.04计算机上安装Flask,要创建其他Flask开发环境,请重复相同的过程。

如果您不熟悉Flask,请查看Flask的相关文档,并了解如何开发您的第一个Flask应用。

 

相关主题

在Ubuntu 20.04系统下安装Python 3.9的两种方法

精选文章
热门文章