デプロイはWebアプリケーションをパッケージングし、アプリケーションを動かすための本番環境に配置することです。
Webアプリケーションを作ったのであれば、あなたのデスクトップやラップトップで動かしているだけではいけません。本番環境に置くことで、あなたのアプリケーションは正式なバージョンを持ち、データと交信することになります。
PythonのWebアプリケーション開発は、それぞれ設定が必要な部品で構成されています。以下の図はデプロイの各テーマの関係を図式化したものです。クリックするとPDF版を見ることができます。
Webアプリケーションをデプロイしホスティングするには4つの選択肢があります。
1~3の選択肢は似たような特徴を持っています。Webアプリケーションを配置するために一つ以上のLinuxディストリビューションサーバを準備します。システムパッケージ、Webサーバ、WSGIサーバ、データベース、Pythonの実行環境をインストールします。最後にアプリケーションのソースを配置し、サーバに配置します。
また、PythonのWebアプリケーションをサーバに配置する方法として、システム特有のパッケージ管理システムを利用する方法もありますが、応用的な方法のため触れません。
時間が限られた状況ならばPaaSの利用を検討してください。アクセスの少ないプロジェクトであれば無料、あるいは安く運用できます。伝統的なサーバーと比べ、OSやWebサーバをセットアップする手間を省くことができます。PaaSでホスティングすることで、素早くアプリケーションをWebで公開することができるでしょう。
伝統的なサーバを使うことは、PythonのWebスタックが動作する仕組みを学ぶのに最適な選択肢です。スケールアップしたPaaSを使うよりVPSを使うほうが経済的なケースが多いです。
サーバ、OS、Webサーバ、WSGIサーバの章を読み、各コンポーネントがPythonのWebアプリケーションを動作させるために何の役割を持っているかを理解してください。