FastAPI

Tip ipuçları ile API'ler oluşturmak için modern, yüksek performanslı bir Python web çerçevesi.

1. Sunucunuza bağlanın

SSH kullanarak sunucunuza bağlanın:

ssh root@<server-ip>

2. Giriş Bilgilerine Erişim

Uygulamanızı yönetmek için fastapi adlı özel bir kullanıcı oluşturulmuştur.

Giriş bilgilerini bu dosyada bulabilirsiniz: /root/.fastapi-creds

Bunları görüntülemek için şunu çalıştırın:

cat /root/.fastapi-creds

Şifreyi değiştirmek isterseniz, şunu kullanın:

passwd fastapi

3. Uygulama Kullanıcısına Geçin

Uygulamanızı yönetmek için fastapi kullanıcı hesabına geçin:

su - flask

Bu hesap, FastAPI projenizi ve ortamınızı içerir.

4. Proje Yapısı

İşte varsayılan dizin yapısı:

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

5. Başvurunuzu Yönetme

Uygulama dizinine gidin:

cd ~/fastapi_app

Sanal ortamı etkinleştirin:

source venv/bin/activate

Ana uygulama dosyasını düzenleyin:

nano main.py

Değişiklikleri uygulamak için FastAPI hizmetini yeniden başlatın:

sudo systemctl restart uvicorn-fastapi

6. Günlükleri Görüntüleme

Uvicorn ve Nginx günlüklerini aşağıdaki şekilde kontrol edebilirsiniz:

  • Uvicorn günlükleri: /var/log/uvicorn/
  • Nginx hata günlüğü: /var/log/nginx/error.log
  • Nginx erişim günlüğü: /var/log/nginx/access.log

Görüntülemek için:

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

7. API'nize Erişim

Hizmet çalışmaya başladığında, FastAPI uygulamanız tarayıcınızda şu adreste kullanılabilir: http://<server-ip>

Nginx, HTTP isteklerini FastAPI uygulamanızı çalıştıran Uvicorn soketine otomatik olarak iletir.

8. Etki Alanını veya Bağlantı Noktasını Değiştirme

Sunucu adını, bağlantı noktasını veya etki alanını güncellemek istiyorsanız:

  1. Nginx site yapılandırmasını düzenleyin: sudo nano /etc/nginx/sites-available/uvicorn-fastapi
  2. Test yapılandırması: sudo nginx -t
  3. Nginx'i yeniden yükle: sudo systemctl restart nginx

9. Uvicorn Hizmeti

FastAPI uygulaması, uvicorn-fastapi adlı bir systemd hizmeti aracılığıyla çalışır.

Kullanır /home/fastapi/fastapi_app/main:app uygulama giriş noktası olarak ve hata durumunda otomatik olarak yeniden başlatılır.

Hizmeti yönetmek için:

systemctl status uvicorn-fastapi
systemctl restart uvicorn-fastapi

Hizmeti düzenlemek için:

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

10. HTTPS'yi etkinleştirin (İsteğe bağlı)

HTTPS'yi etkinleştirmek için Certbot'u kullanın.

Başvuru Detayları