Flaskは、Python用の無料のオープンソースマイクロWebフレームワークであり、開発者が安全でスケーラブルで保守可能なWebアプリケーションを構築できるように設計されています。 FlaskはWerkzeugandに基づいており、テンプレートエンジンとしてJinja2を使用しています。
Djangoとは異なり、デフォルトでは、FlaskにはORM、フォーム検証、またはサードパーティライブラリによって提供されるその他の機能は含まれていません。 Flaskは、Flaskアプリケーションに機能を追加するPythonパッケージである拡張機能を念頭に置いて構築されています。
ニーズに応じて、Flaskをインストールするさまざまな方法があります。システム全体にインストールすることも、pipを使用してPython仮想環境にインストールすることもできます。
FlaskパッケージもEPELリポジトリに含まれており、yum
を使用してインストールできます。 パッケージマネージャー。これはCentOS7にFlaskをインストールする最も簡単な方法ですが、仮想環境にインストールするほど柔軟ではありません。また、リポジトリに含まれているバージョンは、常に最新バージョンのFlaskよりも遅れています。
Python仮想環境の主な目的は、さまざまなPythonプロジェクト用に分離された環境を作成することです。このようにして、1台のコンピューターに複数の異なるFlask環境を設定し、他のFlaskインストールに影響を与えることを心配せずに、プロジェクトごとに特定のバージョンのモジュールをインストールできます。 Flaskをグローバル環境にインストールする場合、コンピューターにインストールできるFlaskバージョンは1つだけです。
CentOS 7へのFlaskのインストール#
次のセクションでは、CentOS7のPython仮想環境にFlaskをインストールする方法について詳しく説明します。
1。 Python 3とvenvのインストール#
ソフトウェアコレクション(SCL)リポジトリからPython3.6をインストールします。
CentOS 7には、CentOSベースシステムの重要な部分であるPython2.7.5が付属しています。 SCLを使用すると、デフォルトのpythonv2.7.5と一緒に新しいバージョンのpython3.xをインストールできるため、yumなどのシステムツールが引き続き正常に機能します。
CentOSエクストラリポジトリに含まれているCentOSSCLリリースファイルをインストールしてSCLを有効にします。
sudo yum install centos-release-scl
リポジトリが有効になったら、次のコマンドを使用してPython3.6をインストールします。
sudo yum install rh-python36
Python 3.6がインストールされると、Djangoアプリケーション用の仮想環境を作成する準備が整います。
2。仮想環境の作成#
Python3仮想環境を保存するディレクトリに移動することから始めます。これは、ホームディレクトリ、またはユーザーが読み取りと書き込みのアクセス許可を持っているその他のディレクトリにすることができます。
Python 3.6にアクセスするには、scl
を使用して新しいシェルインスタンスを起動する必要があります ツール:
scl enable rh-python36 bash
Flaskアプリケーション用の新しいディレクトリを作成し、そこに移動します:
mkdir my_flask_app
cd my_flask_app
次のコマンドを実行して、新しい仮想環境を作成します。
python3 -m venv venv
上記のコマンドは、venv
というディレクトリを作成します 、Pythonバイナリのコピー、Pipパッケージマネージャー、標準のPythonライブラリ、およびその他のサポートファイルが含まれています。仮想環境には任意の名前を使用できます。
activate
を使用して仮想環境をアクティブ化します スクリプト:
source venv/bin/activate
有効化されると、仮想環境のbinディレクトリが$PATH
の先頭に追加されます。 変数。また、シェルのプロンプトが変更され、現在使用している仮想環境の名前が表示されます。私たちの場合、それはvenv
。
3。 Flaskのインストール#
仮想環境がアクティブ化されたので、Pythonパッケージマネージャーpipを使用してFlaskをインストールできます:
pip install Flask
仮想環境内では、コマンドpip
を使用できます pip3
の代わりに およびpython
python3
の代わりに 。 Flaskバージョンを出力する次のコマンドを使用してインストールを確認します。
python -m Flask --version
この記事を書いている時点で、Flaskの最新の公式バージョンは1.0.2です
。Flask 1.0.2
Python 3.6.3 (default, Mar 20 2018, 13:50:41)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]
Flaskのバージョンは、ここに表示されているバージョンとは異なる場合があります。
4。最小限のフラスコアプリケーションの作成#
このガイドでは、「HelloWorld!」というテキストを表示する簡単なhelloworldアプリケーションを作成します。
テキストエディタPythonIDEを開き、次のファイルを作成します。
〜/ my_flask_app / hello.pyfrom flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
コードを1行ずつ分析してみましょう。
- 最初の行では、Flaskクラスをインポートしています。
- 次に、Flaskクラスのインスタンスを作成します。
- 次に、
route()
を使用しますhello_world
を登録するデコレータ/
の関数 ルート。このルートがリクエストされると、hello_world
が呼び出され、「HelloWorld!」というメッセージが表示されます。クライアントに返されます。
ファイルをhello.py
として保存します ターミナルウィンドウに戻ります。
5。開発サーバーのテスト#
flask
を使用します アプリケーションを実行するコマンドですが、その前に、FLASK_APP
を指定して、アプリケーションをロードする方法をFlaskに指示する必要があります。 環境変数:
export FLASK_APP=hello.py
flask run
上記のコマンドは、開発用組み込みサーバーを起動します。
出力は次のようになります。
* Serving Flask app "hello.py"
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
仮想マシンにFlaskをインストールし、Flask開発サーバーにアクセスする場合は、--host=0.0.0.0
を追加して、サーバーを公開できます。 flask run
へ 指図。
http://127.0.0.1:5000
を開きます Webブラウザーで、「HelloWorld!」が表示されます。メッセージ。
開発サーバーを停止するには、CTRL-C
と入力します ターミナルで。
6。仮想環境の非アクティブ化#
作業が完了したら、deactivate
と入力して、環境を非アクティブ化します。 通常のシェルに戻ります。
deactivate