ลด 50% ทุกแพ็กเกจ เวลาจำกัด เริ่มต้นที่ $2.48/mo
FastAPI

FastAPI

FastAPI คือเว็บเฟรมเวิร์ก Python สมัยใหม่ที่ทำงานแบบ async-first รองรับ type hint และสร้างเอกสาร OpenAPI กับ Swagger โดยอัตโนมัติ ใช้งานจริงที่ Microsoft, Uber และ Netflix เร็วกว่า Flask ถึง 3-5 เท่า และเป็นเฟรมเวิร์ก Python ค่าเริ่มต้นสำหรับ REST และ GraphQL API ตั้งแต่ปี 2019

Version

Latest

Operating System

Ubuntu Server 24.04 LTS

Min. RAM

1 GB

IP Types

IPV4,IPV6

1. เชื่อมต่อกับเซิร์ฟเวอร์

ใช้ SSH เพื่อเชื่อมต่อกับเซิร์ฟเวอร์:

ssh root@<server-ip>

2. ดูข้อมูลเข้าสู่ระบบ

มีการสร้างผู้ใช้ชื่อ fastapi โดยเฉพาะสำหรับจัดการแอปพลิเคชันของคุณ

คุณสามารถดูข้อมูลเข้าสู่ระบบได้ในไฟล์นี้: /root/.fastapi-creds

หากต้องการดู ให้รันคำสั่ง:

cat /root/.fastapi-creds

หากต้องการเปลี่ยนรหัสผ่าน ให้ใช้:

passwd fastapi

3. สลับไปยัง App User

สลับไปยังบัญชีผู้ใช้ fastapi เพื่อจัดการแอปของคุณ:

su - flask

บัญชีนี้จัดเก็บโปรเจกต์ FastAPI และ environment ของคุณไว้

4. Project Structure

โครงสร้างไดเรกทอรีเริ่มต้น:

/home/fastapi/fastapi_app/
├── main.py          → Your main FastAPI application file
├── venv/            → Virtual environment
└── __pycache__/     → Compiled Python files (auto-generated)

5. จัดการแอปพลิเคชัน

ไปยังไดเรกทอรีของแอปพลิเคชัน:

cd ~/fastapi_app

เปิดใช้งาน virtual environment:

source venv/bin/activate

แก้ไขไฟล์หลักของแอป:

nano main.py

รีสตาร์ทเซอร์วิส FastAPI เพื่อให้การเปลี่ยนแปลงมีผล:

sudo systemctl restart uvicorn-fastapi

6. Viewing Logs

ตรวจสอบ log ของ Uvicorn และ Nginx ได้ดังนี้:

  • Uvicorn logs: /var/log/uvicorn/
  • Nginx error log: /var/log/nginx/error.log
  • Nginx access log: /var/log/nginx/access.log

To view them:

sudo tail -f /var/log/uvicorn/*

7. เข้าถึง API ของคุณ

เมื่อเซอร์วิสทำงานแล้ว แอป FastAPI จะพร้อมใช้งานในเบราว์เซอร์ที่: http://<server-ip>

Nginx จะส่งต่อคำขอ HTTP ไปยัง Uvicorn socket ที่รันแอป FastAPI ของคุณโดยอัตโนมัติ

8. เปลี่ยน Domain หรือ Port

หากต้องการอัปเดต server name, port หรือ domain:

  1. แก้ไขไฟล์ config ของ Nginx site: sudo nano /etc/nginx/sites-available/uvicorn-fastapi
  2. Test configuration: sudo nginx -t
  3. Reload Nginx: sudo systemctl restart nginx

9. Uvicorn Service

แอป FastAPI ทำงานผ่านเซอร์วิส systemd ที่ชื่อว่า uvicorn-fastapi

It uses /home/fastapi/fastapi_app/main:app เป็น entry point ของแอปพลิเคชัน และรีสตาร์ทอัตโนมัติเมื่อเกิดข้อผิดพลาด

จัดการเซอร์วิส:

systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi

แก้ไขเซอร์วิส:

sudo vim /etc/systemd/system/uvicorn-fastapi.service
sudo systemctl daemon-reload
sudo systemctl restart uvicorn-fastapi
sudo systemctl status uvicorn-fastapi

10. เปิดใช้งาน HTTPS (ไม่บังคับ)

ใช้ Certbot เพื่อเปิดใช้งาน HTTPS

เพิ่มเติมใน Development Tools

Related apps.

ติดตั้ง FastAPI เลยตอนนี้ เริ่มต้นที่ $2.48/เดือน