Skip to content

Uretim Dagitimi

Cavanshirpro edited this page Sep 19, 2026 · 1 revision

Üretim dağıtımı, platformlar ve yedekleme

English · Türkçe · Languages / Diller

Kapsam: JSON API Forge 0.5.1 · İnceleme: 17 Eylül 2026 · Dil: Türkçe

Forge 0.5.1 Alpha'dır. Dağıtım belgesi uygulanmış sınırları açıklar; bütün iş yükleri için üretim yeterliliği belgesi değildir. Geliştirmede çalışan SQLite + memory kurulumu, çok host üretim topolojinize otomatik dönüşmez.

Platform seçimi

Ortam Seçenek Dikkat
Linux glibc Kaynak/wheel veya glibc binary libc/CPU uyumu
Alpine/musl Kaynak/wheel veya musl binary glibc binary kullanmayın
Windows x64 Python veya forge-server.exe Servis hesabı ve ACL
Windows ARM64 Python bağımlılık uygunluğu; frozen x64 uyumluluk paketi Native Editor ARM64 ile karıştırmayın
macOS Python veya mimariye uygun binary İmzalama/notarization ayrı konu
Container Kaynak Dockerfile veya release OCI Non-root, persistent volume, secret store
cPanel Passenger/a2wsgi Conventional HTTP; realtime sınırı

Tek host ASGI başlangıcı

Kaynak checkout'ta, doğru .env ve proje hazırlandıktan sonra:

forge validate
forge doctor --production
forge migrate
uvicorn main:app --host 127.0.0.1 --port 8000 --no-proxy-headers --no-access-log

Kurulu wheel ile kendi dağıtım dizininizden uvicorn framework.reload:create_live_app --factory ... kullanılabilir. Üretim supervisor'ı process restart, günlük saklama ve startup sırasını yönetmelidir. Global Uvicorn proxy rewriting kapalı tutularak Forge'un trusted proxy kontrolü kullanılır.

Üretim hazırlığı

  1. Kaynak commitlerini ve bağımlılık çözümünü kaydedin; deploy paketini yeniden üretilebilir tutun.
  2. Güçlü sırlar, ayrı app/operatör/Editör kimlikleri ve gerçek TLS kullanın.
  3. DB migration ve yedekten restore provası yapın; schema validation moduna geçin.
  4. Gerçek trusted_hosts, CORS ve proxy CIDR'larını ayarlayın.
  5. Çok worker gerekiyorsa Redis cache/rate/events ve ortak veri sınırlarını planlayın.
  6. Yalnız ihtiyaç duyulan port ve yönetim ağını açın.
  7. Health/readiness ve gerçek kullanıcı CRUD/RPC yolunu test edin.
  8. Rollback sırasında kod, config, schema ve data uyumluluğunu birlikte değerlendirin.

Docker

Resmi Dockerfile, Python 3.13 slim tabanı ve non-root forge hesabıyla sunucuyu kurar. main boş app ile gelir. Uygulama yapılandırmasını ve writable data/media/logs dizinlerini açıkça sağlayın; .env/gerçek sırları image'a kopyalamayın.

Image içindeki /health healthcheck'in green olması tüm app'lerin ready olduğu anlamına gelmez. Orchestrator readiness kontrolünü de bağlayın. Çok replica, yerel media'yı ortaklaştırmaz.

İşletim sistemi servisleri

deploy/systemd/json-api-forge.service, deploy/nginx/editor-control-plane.conf.example ve Windows servis yardımcısı başlangıç şablonlarıdır. Mutlak yollar, service user, writable dizinler, TLS ve proxy topolojinize uyarlanmalıdır.

Systemd örneğinin ReadWritePaths listesi data/media/logs içindir. Remote Editör ile config yazdıracaksanız ilgili app/ kapsamı için ayrıca kontrollü yazma hakkı gerekir; tüm filesystem'i yazılabilir yapmayın. Yönetim ve servis hesabı yetkileri aynı amaca göre tasarlanmalıdır.

Yedeklenecek durum

Proje belgeleri, migration sürümleri, iş DB'leri, iç identity/metadata DB'si, media, Editör attachments ve sırların güvenli kopyaları gerekir. Cache çoğunlukla yeniden kurulabilir; iş verisinin yerine geçmez. Yedek yalnız alındığında değil temiz ortamda geri yüklendiğinde doğrulanmış olur.

Kaynak ve doğrulama

Bu sayfa aşağıdaki sabit commitlerdeki davranışı açıklar. Yeni bir sürümde aynı davranışın sürdüğünü varsaymayın.


Wiki ana sayfa · Tüm sayfalar · Sürüm ve bakım

Clone this wiki locally