📋 Python 向けの requirements.txt ファイル
requirements.txt ファイルは、Python プロジェクトで依存関係を指定・管理するための業界標準です。このガイドでは、開発環境と本番環境の一貫性を保つために requirements.txt を作成、設定、利用する方法を説明します。
requirements.txt ファイルとは?
requirements.txt ファイルは、プロジェクトが必要とするすべての外部 Python パッケージを、それぞれの特定のバージョンとともに記述します。これにより次のことが可能になります。
- あなたとチームが同一の環境を維持できる
- 新しい協力者が環境を正確に再現できる
- Square Cloud への deploy が正しい依存関係で動作する
仮想環境を有効化する
仮想環境の中で作業することは、プロジェクトの依存関係をグローバルな Python システムから隔離しておくために不可欠です。これによりバージョンの競合を回避し、再現性を確保できます。お使いのシステムに応じて、以下のいずれかのコマンドで仮想環境を有効化します。Windows:macOS/Linux:
プロジェクトの依存関係を記述する
方法 A: 手動で作成する(推奨)
プロジェクトのルートにrequirements.txt ファイルを作成し、すべての外部パッケージをそのバージョンとともに記述します。requirements.txt
方法 B: pip freeze で自動生成する
仮想環境に依存関係をインストールした後、ファイルを自動生成できます。主な方法は 2 つあります。方法 B1:pip freeze を使う(すべてを含む)pipdeptree またはフィルタリング付きの pip freeze を使う(推奨)プロジェクトの依存関係「のみ」を(補助的な環境パッケージを含めずに)取得するには、次を使用します。pipdeptree をインストールします。仮想環境(推奨)で作業している場合、環境が隔離されておりプロジェクトの依存関係のみを含むため、
pip freeze は完璧に機能します。依存関係を確認・検証する
テキストエディタで
requirements.txt ファイルを開き、次を行います。- パッケージのリストを確認する
- 不要な依存関係を削除する
- 必要に応じてバージョンを更新する
- 正確なバージョン(
==付き)を使っていることを確認する
💡 ベストプラクティスとヒント:
- 常に最新に保つ: 新しい依存関係を追加するたびに
requirements.txtを定期的に見直し、更新する - 正確なバージョンを使う: 本番環境での予期しない問題を避けるため、
>、>=、バージョン指定なしではなく、常に==を使う - pip freeze を確認する:
pip freezeを使う場合、不要な補助パッケージが含まれることがあるため、コミット前にファイルを見直す - バージョン管理: 依存関係の変更を追跡するため、
requirements.txtを git にコミットする - 隔離された環境: グローバルな競合を避けるため、プロジェクトごとに 1 つの仮想環境を維持する
- ローカルでテストする: デプロイ前に、新しい環境で
pip install -r requirements.txtを使ってファイルをテストする
🚀 次のステップ
requirements.txt ファイルの設定が完了したら:
- Git リポジトリにコミットする。
- プロジェクトを Square Cloud にホスティングする。
- GitHub 経由での自動 deploy を設定する。
- プロフェッショナルな Python アプリケーションホスティングへようこそ!
requirements.txt ファイルは、あらゆる成功する Python アプリケーションの基盤であり、Square Cloud 上でアプリケーションが完璧に動作することを保証します。
