このリポジトリをフォークまたはクローンして、そのまま使用できます。
それはちょうどうまくいきます。
プライベート リポジトリが必要な場合、GitHub ではフォークの可視性を変更できないため、単純にフォークすることはできません。
ただし、次のことは可能です。
my-full-stack
を作成します。my-full-stack
)。 git clone [email protected]:fastapi/full-stack-fastapi-template.git my-full-stack
cd my-full-stack
git remote set-url origin [email protected]:octocat/my-full-stack.git
git remote add upstream [email protected]:fastapi/full-stack-fastapi-template.git
git push -u origin master
リポジトリのクローンを作成し、変更を加えた後、この元のテンプレートから最新の変更を取得することができます。
git remote -v
origin [email protected]:octocat/my-full-stack.git (fetch)
origin [email protected]:octocat/my-full-stack.git (push)
upstream [email protected]:fastapi/full-stack-fastapi-template.git (fetch)
upstream [email protected]:fastapi/full-stack-fastapi-template.git (push)
git pull --no-commit upstream master
これにより、コミットせずにこのテンプレートから最新の変更がダウンロードされます。これにより、コミットする前にすべてが正しいことを確認できます。
競合がある場合は、エディターで解決してください。
完了したら、変更をコミットします。
git merge --continue
その後、 .env
ファイル内の構成を更新して構成をカスタマイズできます。
デプロイする前に、少なくとも次の値を変更していることを確認してください。
SECRET_KEY
FIRST_SUPERUSER_PASSWORD
POSTGRES_PASSWORD
これらをシークレットから環境変数として渡すことができます (またそうすべきです)。
詳細については、deployment.md ドキュメントをお読みください。
.env
ファイル内の一部の環境変数のデフォルト値は、 changethis
です。
秘密キーを使用してそれらを変更する必要があります。秘密キーを生成するには、次のコマンドを実行できます。
python -c " import secrets; print(secrets.token_urlsafe(32)) "
コンテンツをコピーし、パスワード/秘密キーとして使用します。そして、それを再度実行して、別の安全なキーを生成します。
このリポジトリは、Copier を使用した新しいプロジェクトの生成もサポートしています。
すべてのファイルがコピーされ、構成に関する質問があり、その回答で.env
ファイルが更新されます。
Copier は次の方法でインストールできます。
pip install copier
あるいは、 pipx
がある場合は、次のように実行できます。
pipx install copier
注: pipx
がある場合、コピー機のインストールはオプションであり、直接実行できます。
新しいプロジェクトのディレクトリの名前を決定します。これは以下で使用します。たとえば、 my-awesome-project
などです。
プロジェクトの親となるディレクトリに移動し、プロジェクト名を指定してコマンドを実行します。
copier copy https://github.com/fastapi/full-stack-fastapi-template my-awesome-project --trust
pipx
があり、 copier
インストールしていない場合は、それを直接実行できます。
pipx run copier copy https://github.com/fastapi/full-stack-fastapi-template my-awesome-project --trust
.env
ファイルを更新する作成後スクリプトを実行できるようにするには、 --trust
オプションが必要であることに注意してください。
Copier は、プロジェクトを生成する前に手元に用意しておきたいデータを要求します。
ただし、心配する必要はありません。後で.env
ファイル内で更新するだけで済みます。
入力変数とそのデフォルト値 (一部は自動生成) は次のとおりです。
project_name
: (デフォルト: "FastAPI Project"
) API ユーザーに表示されるプロジェクトの名前 (.env 形式)。stack_name
: (デフォルト: "fastapi-project"
) Docker Compose のラベルとプロジェクト名に使用されるスタックの名前 (スペース、ピリオドなし) (.env 内)。secret_key
: (デフォルト: "changethis"
) セキュリティに使用されるプロジェクトの秘密キー。.env に保存されます。上記の方法で生成できます。first_superuser
: (デフォルト: "[email protected]"
) 最初のスーパーユーザーの電子メール (.env 形式)。first_superuser_password
: (デフォルト: "changethis"
) 最初のスーパーユーザーのパスワード (.env 形式)。smtp_host
: (デフォルト: "") 電子メールを送信する SMTP サーバーのホスト。後で .env で設定できます。smtp_user
: (デフォルト: "") 電子メールを送信する SMTP サーバー ユーザー。後で .env で設定できます。smtp_password
: (デフォルト: "") 電子メールを送信するための SMTP サーバーのパスワード。後で .env で設定できます。emails_from_email
: (デフォルト: "[email protected]"
) 電子メールの送信元の電子メール アカウント。後で .env で設定できます。postgres_password
: (デフォルト: "changethis"
) PostgreSQL データベースのパスワード。.env に保存されます。上記の方法で生成できます。sentry_dsn
: (デフォルト: "") Sentry の DSN。使用している場合は、後で .env で設定できます。 バックエンドのドキュメント: backend/README.md。
フロントエンドのドキュメント:frontend/README.md。
展開ドキュメント:deployment.md。
一般的な開発ドキュメント:development.md。
これには、Docker Compose、カスタム ローカル ドメイン、 .env
構成などの使用が含まれます。
ファイル release-notes.md を確認してください。
フル スタック FastAPI テンプレートは、MIT ライセンスの条件に基づいてライセンスされています。