كود المصدر : https://github.com/fastapi/fastapi-cli
قم بتشغيل وإدارة تطبيقات FastAPI من سطر الأوامر باستخدام FastAPI CLI. ؟
FastAPI CLI هو fastapi
لبرنامج سطر الأوامر الذي يمكنك استخدامه لخدمة تطبيق FastAPI الخاص بك، وإدارة مشروع FastAPI الخاص بك، والمزيد.
عندما تقوم بتثبيت FastAPI (على سبيل المثال، مع pip install "fastapi[standard]"
)، فإنه يتضمن حزمة تسمى fastapi-cli
، توفر هذه الحزمة أمر fastapi
في الوحدة الطرفية.
لتشغيل تطبيق FastAPI للتطوير، يمكنك استخدام الأمر fastapi dev
:
$ 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.
برنامج سطر الأوامر هذا المسمى fastapi
هو FastAPI CLI .
يأخذ FastAPI CLI المسار إلى برنامج Python الخاص بك ويكتشف المتغير تلقائيًا باستخدام FastAPI ( app
المسمى عادةً) وكيفية استيراده، ثم يقدمه.
للإنتاج يمكنك استخدام fastapi run
بدلاً من ذلك. ؟
داخليًا، يستخدم FastAPI CLI خادم Uvicorn، وهو خادم ASGI عالي الأداء وجاهز للإنتاج. ؟
fastapi dev
عند تشغيل fastapi dev
، سيتم تشغيله في وضع التطوير.
افتراضيًا، سيتم تمكين إعادة التحميل التلقائي ، لذلك سيتم إعادة تحميل الخادم تلقائيًا عند إجراء تغييرات على التعليمات البرمجية الخاصة بك. يتطلب هذا استخدامًا كثيفًا للموارد ويمكن أن يكون أقل استقرارًا من دونه، ويجب عليك استخدامه فقط للتطوير.
افتراضيًا، سوف يستمع إلى عنوان IP 127.0.0.1
، وهو عنوان IP لجهازك ليتواصل مع نفسه وحده ( localhost
).
fastapi run
عند تشغيل fastapi run
، سيتم تشغيله في وضع الإنتاج افتراضيًا.
سيتم تعطيل إعادة التحميل التلقائي بشكل افتراضي.
سوف يستمع إلى عنوان IP 0.0.0.0
، مما يعني جميع عناوين IP المتاحة، وبهذه الطريقة سيكون متاحًا للعامة لأي شخص يمكنه التواصل مع الجهاز. هذه هي الطريقة التي يتم بها تشغيله عادةً في الإنتاج، على سبيل المثال، في حاوية.
في معظم الحالات، سيكون لديك (ويجب عليك) أن يكون لديك "وكيل إنهاء" يتعامل مع HTTPS نيابةً عنك، وسيعتمد هذا على كيفية نشر التطبيق الخاص بك، وقد يقوم مزود الخدمة الخاص بك بذلك نيابةً عنك، أو قد تحتاج إلى إعداده بنفسك. يمكنك معرفة المزيد عنها في وثائق نشر FastAPI.
هذا المشروع مرخص بموجب شروط ترخيص MIT.