Orbit
Projenizi Dağıtma
Once a repository is connected, Orbit deploys on every push to your production branch: it clones the commit, installs dependencies, runs your build, packages the output and starts serving it. This…
Projenizi Dağıtma
Bir depo bağlandığında, Orbit her push işleminde üretim dalınıza dağıtım yapar: commit'i klonlar, bağımlılıkları yükler, yapınızı çalıştırır, çıktıyı paketler ve sunmaya başlar. Bu rehber, tam dağıtım döngüsünü, bir taneyi manuel olarak nasıl tetikleyeceğinizi ve bir dağıtımın canlı gitmesine izin verip vermeyeceğine karar veren kontrolleri kapsar.
Otomatik Dağıtımlar Nasıl Çalışır
Ayarlar, sonra Git içinde Üretim dalı olarak ayarlanan dala yapılan her push işlemi bir dağıtımı tetikler. Orbit daha sonra:
- GitHub, GitLab veya Bitbucket'tan push olayını alır.
- Bir dağıtımı sıraya alır ve ona bir yapı yuvası atar.
- Deponuzu tam o commit'te klonlar.
- Önbellek deponuza planınızda mevcutsa önbelleğe alınan
node_modulesöğesini geri yükler. - Yükleme komutunuzu çalıştırır (
npm ci,yarn installveyapnpm install, kilit dosyanızdan algılanır). - Yapı komutunuzu çalıştırır.
- Çıktı dizinini bir dağıtım yapıtına paketler ve yükler.
- Ortamı yeni yapıtı sunacak şekilde değiştirir.
Dağıtım ayrıntı sayfası bunları adlandırılmış Yapı aşamaları olarak gösterir: Klonla, Önbelleği geri yükle, Yükle, Önbelleği kaydet, Yapı, Yükle, Tamamlandı. Çoğu proje bir ila üç dakikada tamamlanır.

Dağıtım Durumları
| Durum | Anlamı |
|---|---|
| Sıraya alındı | Bir yapı yuvası bekleniyor. Dağıtım sayfası kuyruktaki konumunuzu gösterir |
| Onay bekleniyor | Üretim için onay gerekli açık olduğu için tutulmuştur. Birinin onu onaylaması gerekir |
| Yapı oluşturuluyor | Bağımlılıklar yükleniyor ve yapı komutu çalıştırılıyor |
| Dağıtılıyor | Yapı tamamlandı, yeni yapıt trafik önüne konuluyor |
| Başarılı oldu (Canlı olarak gösterilir) | Trafik sunuyor. Dağıtım bir CURRENT rozeti taşır |
| Başarısız | Yapı veya dağıtım adımı hata aldı. Nerede olduğunu görmek için günlüğü açın |
| İptal edildi | Tamamlanmadan önce durduruldu, siz tarafından veya aynı dala yapılan daha yeni bir push tarafından |
| Geri alındı | Önceki bir yapıya geri alma tarafından yerine geçirildi |
Süren Bir Yapıyı İzleme
Proje Özeti, En son yapı panelinde canlı akışlı günlüğü olan geçerli yapıyı gösterir. Dağıtım ayrıntı sayfasını açmak için Tam ayrıntılar'a tıklayın. Bu sayfa bir yapı ilerleme çubuğu, tahmini kalan süre, kuyruk konumu ve aşamaya bölünmüş yapı zaman çizelgesini ekler.
Planınız birden fazla eş zamanlı yapıya izin veriyorsa ve hepsi meşgulse, sayfa bunu size açıkça söyler: kaç eş zamanlı yapı yuvanızın kullanımda olduğunu gösterir ve bir tane boşaldığında dağıtımınızı otomatik olarak başlatır. Tüm projeleriniz arasında uçuş halindeki her yapıyı Orbit, sonra Kuyruk konumunda görebilirsiniz.
Bir Dağıtımı Manuel Olarak Tetikleme
Yeni bir commit push'lamadan dağıtım yapmak için dört yol vardır.
En Son Commit'i Yeniden Dağıtın
- Projeyi açın.
- Dağıtımlar sekmesini açın.
- İstediğiniz dağıtıma tıklayarak ayrıntı sayfasını açın.
- Yapıyı yeniden deneyin'e tıklayın. Eski bir önbelleğe alınan bağımlılıktan şüpheleniyorsanız Daha fazla yeniden deneme seçeneği'ne, sonra Önbelleği temizleyerek yeniden deneyin'e tıklayın.
Şimdi Dağıt
Dağıtımlar sekmesindeki Şimdi dağıt düğmesi, üretim dalınızın geçerli başının yeni bir yapısını sıraya alır.
Bir Dağıtımı Planlayın
Bir dağıtım gelecekteki bir zaman için planlanabilir. Orbit, onu planladığınız anda commit'in anlık görüntüsünü alır, böylece daha sonra çalışan yapı, bu arada inen herhangi bir kodun değil, onayladığınız koddur.
Dağıtım Kancaları
Bir dağıtım kancası, bir şey ona bir POST isteği gönderdiğinde bir yapıyı sıraya alan gizli bir URL'dir. Bunları başsız bir CMS'den, bir cron işinden veya bir CI işlem hattından yeniden oluşturmak için kullanın. Bunları projenin Kancalar sekmesinde ayarlayın. Dağıtım Kancaları Aracılığıyla Dağıtımları Tetikleme konusuna bakın.
Yapı Ayarları
Orbit çoğu proje için akılcı varsayılanları algılar. Herhangi birini Ayarlar, sonra Yapı ayarları içinde geçersiz kılın:
| Alan | Boş olduğunda Yer Tutucu | Örnekler |
|---|---|---|
| Yükleme komutu | npm ci (auto-detected) | npm ci, yarn install --frozen-lockfile, pnpm install |
| Yapı komutu | npm run build (auto-detected) | npm run build, next build, vite build, astro build |
| Çıktı dizini | dist (auto-detected) | dist, .next, out, build, .output |
| Kök dizin | / (monorepo subdirectory) | apps/web |
| Node.js sürümü | Platform varsayılanı | 18, 20, 22 |
Otomatik olarak algılanan değeri korumak için bir alanı boş bırakın. Çerçeve başına değerler ve ilk dağıtımın başarısız olmasına neden olan hatalar da dahil olmak üzere tam ayrıntı Yapı Komutunuzu ve Çıktı Dizininizi Yapılandırma konusundadır.
Kök dizin ayarlamak, çalışma dizinini değiştirmekten daha fazlasını yapar. Yalnızca bu yolun dışındaki dosyaları değiştiren push'lar otomatik olarak atlanır, bu nedenle bir monorepo her commit'te her uygulamayı yeniden oluşturmaz.
Bir Dağıtıma Ne Zaman İzin Verildiğini Belirleme
Orbit'in birkaç bağımsız kapısı vardır. Hepsi Ayarlar içinde yaşar.
Dağıtım Kilitler
Bir olayda, bir bakım penceresinde veya bir kod dondurmasında üretimi dondurmak için bir kilit kullanın.
- Projeyi açın.
- Dağıtımları kilitle'ye tıklayın.
- İsteğe bağlı bir neden ekleyin.
Kilitliyken, push tarafından tetiklenen dağıtımlar sessizce atlanır ve bir başlık Üretim dağıtımları kilitlendi ile okur, nedeni gösterir. Manuel dağıtımlar hala çalışır, bu kasıtlıdır: bir kilit, kaza dağıtımlarını durdurur, göndermeye çalıştığınız düzeltmeyi değil. Kaldırmak için Dağıtımların kilidini aç'a tıklayın.
Üretim için Onay Gerekli
Dağıt koruma altında Üretim için onay gerekli'yi açın. Push tarafından tetiklenen üretim dağıtımları daha sonra birisi dağıtımı açıp Onayla veya Reddet'e tıklayana kadar Onay bekleniyor konumunda duraklar. Panel dağıtımları ve dağıtım kancaları etkilenmez.
Önce Hazırlama Başarısı Gerekli
Üretim öncesinde hazırlama başarısı gerekli, push tarafından tetiklenen üretim dağıtımını hazırlama ortamı aynı commit'i başarıyla dağıtana kadar tutar. Birisi hala beklemeyi atlamak için manuel olarak onay verebilir.
CI Gerekli Kontrolleri
Dağıtımları CI gerekli kontrolleri altında kendi CI'nize göre açın. GitHub'da virgülle ayrılmış Actions iş adlarını girin ve hepsi geçmeli. GitLab'de, boş olmayan herhangi bir değer tüm işlem hattı için beklenir. Bir CI hatası Orbit dağıtımını otomatik olarak iptal eder.
Dağıtım Dondurma Zamanlaması
Dağıtım dondurma zamanlaması onaylanan pencereler dışında push tarafından tetiklenen dağıtımları engeller: bir hafta sonu bloku, izin verilen bir saat aralığı veya her ikisi. Tüm saatler UTC'dir. Manuel dağıtımlar ve dağıtım kancaları etkilenmez.
Yukarıdaki her kapı, dağıtım dondurma zamanlaması hariç, yalnızca push tarafından tetiklenen dağıtımları engeller. Dağıtım kancaları ve manuel panel dağıtımları doğrudan geçer. Bir kanca URL'si sızarsa, bu ayarlardan hiçbiri bir yapıyı sıraya almaktan durmayacak. Kanca URL'lerini kimlik bilgileri gibi tutun.
İhtiyacınız Olmayan Yapıları Atlamak
- Yok sayılan yollar: virgülle ayrılmış glob düzenleri. Bir push'taki her dosya eşleşirse, yapı atlanır.
*.md,docs/**belge commit'lerinin dağıtımları tetiklemesini durdurur. - Dal yok sayma düzenleri: eşleşen dallardan gelen push'lar tamamen atlanır.
dependabot/*,renovate/*yaygın durumdur. - Git etiketi dağıtımları: eşleşen bir etiket push'lanırken
v*gibi bir glob kullanarak üretim yapıya dağıtın.
Yapı Önbelleği
Orbit Liftoff ve Apex planlarında yapılar arasında node_modules önbelleğe alır. Önbelleğe alınan bir yükleme kullanıldığında, dağıtım bir Önbellek isabet rozeti gösterir ve yükleme aşaması çok daha kısadır. Soğuk bir yapı bunun yerine Soğuk yapı'yı gösterir.
Tam bir yeniden yüklemeyi zorlamak için Ayarlar'ı açın, sonra Yapı önbelleğini temizle'ye tıklayın ve onaylayın. Her ortam için sonraki dağıtım sıfırdan başlayan tam bir yükleme çalıştırır.
Bir yapı açıklayamayacağınız bir şekilde başarısız olursa ve kod yerel olarak iyiyse, herhangi bir şeyi değiştirmeye başlamadan önce önbelleği temizleyerek yeniden deneyin. Eski bir önbelleğe alınan bağımlılık ağacı yaygın ve çok kafa karıştırıcı bir nedendir.
Bir Dağıtım Yanlış Gittiğinde
Orbit, canlı bırakmak yerine sizin için kötü bir dağıtımı yakalayabilir:
- Hata üzerine otomatik geri alma, bir üretim dağıtımı başarısız olursa son sağlıklı dağıtımı otomatik olarak geri yükler.
- Sağlık kontrolü, her üretim dağıtımdan sonra seçtiğiniz bir yolu getirir. 15 saniye içinde 2xx olmayan bir yanıt önceki sağlıklı dağıtımı geri yükler.
- Smoke testleri her başarılı dağıtımdan sonra 10 adresli GET istekleri çalıştırır ve geçişi veya başarısızlığı kaydeder. Otomatik geri alma ile birleştirildiğinde, başarısız olan bir smoke testi dağıtımı geri alır.
Bir dağıtımı kendiniz geri almak için Bir Dağıtımı Geri Alma konusuna bakın. Bir yapı neden başarısız olduğunu anlamak için Başarısız Yapıları Sorun Giderme konusuna bakın.