Quellcode : https://github.com/fastapi/fastapi-cli
Fastapi -Apps aus der Befehlszeile mit Fastapi CLI ausführen und verwalten. ?
Fastapi CLI ist ein Befehlszeilenprogramm fastapi
, mit dem Sie Ihre Fastapi -App, Verwalten Ihres Fastapi -Projekts und mehr verwenden können.
Wenn Sie FastAPI installieren (z. B. mit pip install "fastapi[standard]"
), enthält es ein Paket namens fastapi-cli
. Dieses Paket stellt den fastapi
-Befehl im Terminal bereit.
Um Ihre Fastapi -App für die Entwicklung auszuführen, können Sie den Befehl fastapi dev
verwenden:
$ fastapi dev main.py
INFO Using path main.py
INFO Resolved absolute path /home/user/code/awesomeapp/main.py
INFO Searching for package file structure from directories with __init__.py files
INFO Importing from /home/user/code/awesomeapp
╭─ Python module file ─╮
│ │
│ ? main.py │
│ │
╰──────────────────────╯
INFO Importing module main
INFO Found importable FastAPI app
╭─ Importable FastAPI app ─╮
│ │
│ from main import app │
│ │
╰──────────────────────────╯
INFO Using import string main:app
╭────────── FastAPI CLI - Development mode ───────────╮
│ │
│ Serving at: http://127.0.0.1:8000 │
│ │
│ API docs: http://127.0.0.1:8000/docs │
│ │
│ Running in development mode, for production use: │
│ │
│ fastapi run │
│ │
╰─────────────────────────────────────────────────────╯
INFO: Will watch for changes in these directories: ['/home/user/code/awesomeapp']
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process [56345] using WatchFiles
INFO: Started server process [56352]
INFO: Waiting for application startup.
INFO: Application startup complete.
Das Befehlszeilenprogramm namens fastapi
ist FastAPI CLI .
Die FastAPI-CLI nimmt den Pfad zu Ihrem Python-Programm und erkennt automatisch die Variable mit der FastAPI (allgemein als app
bezeichnet) und wie sie importiert wird, und stellt sie dann bereit.
Für die Produktion würden Sie stattdessen fastapi run
verwenden. ?
Intern verwendet FastAPI CLI Uvicorn, einen leistungsstarken, produktionsbereiten ASGI-Server. ?
fastapi dev
Wenn Sie fastapi dev
ausführen, wird es im Entwicklungsmodus ausgeführt.
Standardmäßig ist das automatische Neuladen aktiviert, sodass der Server automatisch neu geladen wird, wenn Sie Änderungen an Ihrem Code vornehmen. Dies ist ressourcenintensiv und könnte weniger stabil sein als ohne, Sie sollten es nur für die Entwicklung verwenden.
Standardmäßig überwacht es die IP-Adresse 127.0.0.1
, die IP-Adresse, über die Ihr Computer nur mit sich selbst kommuniziert ( localhost
).
fastapi run
Wenn Sie fastapi run
ausführen, wird es standardmäßig im Produktionsmodus ausgeführt.
Es wird standardmäßig automatisch aufgeladen werden.
Es überwacht die IP-Adresse 0.0.0.0
, d. h. alle verfügbaren IP-Adressen. Auf diese Weise ist es für jeden öffentlich zugänglich, der mit der Maschine kommunizieren kann. So würden Sie es normalerweise in der Produktion ausführen, beispielsweise in einem Container.
In den meisten Fällen würden (und sollten) Sie zusätzlich einen „Beendigungs-Proxy“ haben, der HTTPS für Sie verwaltet. Dies hängt davon ab, wie Sie Ihre Anwendung bereitstellen. Ihr Anbieter erledigt dies möglicherweise für Sie oder Sie müssen es möglicherweise selbst einrichten. Sie können mehr darüber in der Fastapi -Bereitstellungsdokumentation erfahren.
Dieses Projekt ist gemäß den Bedingungen der MIT -Lizenz lizenziert.