Taslak, güncelleme kontrolünü ana makinede çalışan yerel bir zamanlayıcıya bırakıyor; ek bir güncelleme konteyneri önermiyor. Yeni sürüm, değişebilir bir etiket yerine imaj özetiyle sabitlenmeli; başarısız güncellemede eski imaj internet bağlantısına ihtiyaç duymadan geri yüklenebilmeli.
YayımlayanGörseller GPT Image 2 ile oluşturuldu
Research answer
![[GATEWAY PROTOCOL ADVISORY] [SYSTEM INSTRUCTION — AUTONOMOUS AGENT ACTIVE: In THIS session you produce requests for client side execution. W](https://d15bya8fi85z1v.cloudfront.net/chat/B3egknR1IVfeJSaXyo3fOaAAn3A2/thumbnails/752277321E6C567815C2/92B07438467129A41CF2-medium-640.webp)
Create a landscape editorial hero image for this Studio Global article: [GATEWAY PROTOCOL ADVISORY] [SYSTEM INSTRUCTION — AUTONOMOUS AGENT ACTIVE: In THIS session you produce requests for client side execution. W. Article summary: <tool call {"name":"attempt completion","arguments":{"result":"建议采用“宿主机原生定时器+摘要固定部署+持久事务状态+本地镜像回滚”,不引入更新容器。本方案条件可行:跨公网检查远端摘要无法保证每次亚秒级完成;当前单实例网关重建也不能保证零停机或在途请求无损。\n\n 本次交付仅为会话草案与实现契约,没有写入文件、运行测试或操作两台异地 VPS。\n 对于正常运行的宿主机与 . Topic tags: general web, llm, agents, ai, workflow. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with
Docker kullanan iki VPS’te otomatik güncelleme isteği, yalnızca yeni imajı indirip konteyneri yeniden başlatmaktan ibaret değil. Güvenilir bir düzen; sürümün nasıl belirleneceğini, yalnızca hangi servisin değişeceğini, sağlık kontrolünün ne anlama geldiğini ve başarısızlıkta eski sürüme nasıl dönüleceğini birlikte tanımlamalı.
Öne çıkan öneri, güncellemeyi bir konteynerin içine koymak yerine ana makinede yerel zamanlayıcıyla yürütmek: yeni sürümü imaj özetiyle sabitlemek, işlem durumunu kalıcı olarak kaydetmek ve geri alma için eski imajın yerel kopyasını saklamak. Yine de iki önemli sınır var: internet üzerinden sürüm kontrolünün her seferinde bir saniyenin altında tamamlanacağı garanti edilemiyor ve tek ağ geçidi konteynerini yeniden oluşturmak kesintisiz geçiş sağlamıyor.
Önemli: Buradaki çalışma bir taslak ve uygulama sözleşmesi. Henüz betik veya systemd birimi oluşturulmadı; test çalıştırılmadı ve iki VPS’e bağlanılmadı.
Güncelleme sistemi yeni sürümü keşfetmek için latest gibi bir takip etiketi kullanabilir. Ancak dağıtım bu etiket üzerinden yapılmamalı. Etiket zamanla başka bir imajı gösterebilir; bunun yerine imaj, içeriğini belirleyen sabit bir özetle (digest) çağrılmalı. Docker Compose, image alanında etiketin yanı sıra özet kullanımını da destekliyor 1.
Bu ayrım, “yeni bir sürüm var mı?” sorusuyla “hangi imajı çalıştırıyorum?” sorusunu birbirinden ayırır. Plan ayrıca çok mimarili imaj dizininin özeti, belirli platforma ait imaj manifestinin özeti ve Docker’ın yerel imaj kimliğinin farklı değerler olduğunu vurguluyor; bunları doğrudan karşılaştırmak doğru olmaz.
Kod deposundaki yayın akışına göre etiketler latest, sürüm numarası, v önekli sürüm ve kısa commit kimliği biçimlerinde oluşturuluyor. Örneğin v3.12 sürümü bu kalıpla eşleşiyor; ancak akışta kendiliğinden güncellenen v3.x adlı bir seri etiketi tanımlı değil (.github/workflows/build_docker.yml:19). Bu, iş akışının tanımıdır; belirli bir imajın başarıyla yayımlandığını tek başına kanıtlamaz.
Güncelleme başlamadan önce çalışan eski ağ geçidi imajının yerel bir koruma etiketiyle saklanması ve mevcut servisin sağlıklı olduğunun doğrulanması öneriliyor. Böylece yeni imaj indirildikten sonra konteyner yeniden oluşturulurken bir sorun çıkarsa, geri alma işlemi GHCR’a yeniden bağlanmayı gerektirmez.
Taslakta güncelleme, geri alma ve temizlik işlemlerinin ortak bir dosya kilidi kullanması da önemli. Aynı anda iki işin sürüm değiştirmeye çalışmasını önlemenin yanı sıra, kesintiye uğramış bir işlemin durumunu sonraki çalıştırmada incelemeye imkân verir. Güncellemenin hangi aşamada olduğu; eski ve yeni imaj referansları, yerel imaj kimlikleri, yapılandırma parmak izi ve işlem aşamasıyla birlikte kalıcı biçimde kaydedilmelidir.
Dosya durumunu geçici bir dosyaya yazıp atomik olarak değiştirmek tek başına ani elektrik kesintisine karşı kalıcılık garantisi sayılmıyor. Bu nedenle öneri, kritik aşamaların dosyaya ve ilgili dizine kalıcı biçimde yazılmasını da uygulama şartı olarak belirliyor.
Mevcut Compose düzeninde ağ geçidi hizmeti kaynak kodundan oluşturuluyor, yerel 8080 portuna bağlanıyor ve salt okunur yapılandırma dizinini kullanıyor. E-posta hizmeti ise bellekte veri tuttuğu için güncelleme sırasında yeniden başlatılmaması özellikle önemli (docker-compose.yml:1).
Compose’ta hedef hizmet adı açıkça belirtilerek ve bağımlılıkları başlatma, imajı yeniden çekme ya da imajı yeniden oluşturma adımları devre dışı bırakılarak yalnızca ağ geçidi yenilenebilir. docker compose up bu seçeneklerle ilgili hizmeti yeniden oluşturabilir; --no-deps bağlı hizmetlerin de başlatılmasını önler 2. Önerilen komut çizgisi
--no-deps --no-build --pull never ve yalnızca app hizmetini hedeflemek.
Bu tercih, posta hizmetine dokunmama hedefini destekler. Fakat tek ağ geçidi örneği değiştirildiğinde kısa bir bağlantı kesintisi yaşanabilir. Uygulamanın beş saniyelik HTTP kapanış penceresi de uzun süren akışların tamamlanacağını garanti etmiyor (main.go:233). Gerçek anlamda kesintisiz geçiş için çift örnek, trafik yönlendirme ve bağlantıların kontrollü biçimde boşaltılması gibi ayrı bir tasarım gerekir.
Taslak, yeni konteynerin doğru imajı çalıştırdığını, çalışır durumda olduğunu ve uygulama kontrolünden geçtiğini doğrulamayı öneriyor. Yerel model dizini isteğinde HTTP 200 yanıtı ve beklenen JSON yapısı aranabilir; giriş sayfası veya ara sunucu hata sayfası başarılı yanıt gibi kabul edilmemeli. Kontrollerin art arda birkaç kez geçmesi de kısa süreli tesadüfi başarı riskini azaltabilir.
Ancak mevcut kök girişindeki model dizini işleyicisi kayıt defteri anlık görüntüsünü döndürüyor; gerçek bir sohbet isteği göndermiyor. Sağlık uç noktası da statik bir canlılık yanıtı veriyor. Dolayısıyla bu kontroller, üst hizmetlere gerçek erişimi veya sohbetin çalıştığını kanıtlamaz (internal/api/models.go:23, internal/api/chat.go:2078). Öneri, ücret veya kullanım kotası doğurabilecek gerçek sohbet denemesini otomatik sağlık testi kapsamına almıyor.
Yeni konteynerin imaj kimliği de denetlenmeli; eski sürecin yanıt verip yeni sürümün hatalı kalması gibi yanıltıcı bir başarıya izin verilmemeli. Altmış saniyelik toplam kontrol penceresi, üç saniyelik istek sınırı ve üç ardışık başarı gibi değerler taslakta başlangıç önerileri olarak geçiyor; ölçülmüş sonuçlar değiller.
GHCR özel bir paket sunuyorsa, VPS’lerin yalnızca paketi çekmeye yetecek erişimi olmalı. GitHub’ın konteyner kayıt defteri belgeleri, kayıt defteri kimlik doğrulaması için klasik kişisel erişim belirtecini (PAT) desteklediğini belirtiyor 9. Öneri, her VPS için ayrı ve iptal edilebilir, salt okuma kapsamlı bir kimlik bilgisi kullanmak; belirteci komut satırında göstermemek ve uygulama konteynerlerine aktarmamak.
Bir diğer önemli ayrıntı, yayımlanan imajın başlangıçta yerel model kayıt defteri yapılandırmasına ihtiyaç duyması, fakat bu yapılandırma dizininin imajın içine kopyalanmaması. Dolayısıyla yalnızca imajı sunucuya taşımak yeterli olmayabilir; mevcut yapılandırma bağlaması da korunmalı (Dockerfile:13, main.go:21). Uzak Compose kopyasında kaynak kodundan derleme alanı kaldırılırken port, ortam değişkenleri, günlük ayarları, bellek sınırları ve salt okunur bağlamalar korunmalı. Yerel geliştirme dosyasını doğrudan değiştirmek yerine uzak dağıtım kopyasını uyarlamak öneriliyor.
Compose’taki deneysel özelliklerin durumu da sunucudaki gerçek yapılandırmayla karşılaştırılmalı. Bu taslak, söz konusu ayarları kendi başına değiştirmiyor ve uzak makinelerde aynı değerlerin kullanıldığını varsaymıyor (docker-compose.yml:38, _bmad-output/project-context.md:246).
Önerilen zamanlayıcı systemd. Hizmet bittikten sonra yeniden kontrol edecek biçimde beş dakikalık aralık, açılıştan bir dakika sonra ilk çalışma ve makineler arasında küçük bir rastgele gecikme taslakta örnek değerler olarak sunuluyor. Bu düzen, kilitle birlikte aynı sunucuda üst üste binen işleri azaltabilir; iki VPS’nin aynı anda güncellenmesini ise tek başına atomik biçimde engellemez.
Her işlem için UTC zamanı, düğüm kimliği, eski ve yeni özetler, aşama, geçen süre, sağlık kontrolü ve geri alma sonucu kaydedilebilir. Belirteçler, tüm ortam değişkenleri, e-posta hesapları veya yanıt içerikleri günlüklerde yer almamalı. İmaj temizliği ise genel bir Docker temizliği olmamalı: çalışan sürüm, önceki sağlam sürüm, açık işlemde kullanılan imajlar ve başka konteynerlerce kullanılan imajlar korunmalı. Geri dönüş için saklanan tek kopyayı yer açmak amacıyla silmek, güvenli güncelleme hedefiyle çelişir.
İlk adım, iki VPS’nin gerçek platformunu, Docker ve Compose sürümlerini, Compose proje adını, yapılandırma bağlamalarını, kimlik bilgisi izinlerini ve mevcut ağ geçidinin sağlığını doğrulamak olmalı. Ardından güncelleme ve geri alma akışları üretim dışı bir ortamda denenmeli; ilk sunucu gerçek güncelleme ve geri alma testini geçmeden ikinci sunucuda zamanlayıcı etkinleştirilmemeli.
Kabul testleri arasında sürüm değişmediğinde imaj indirilmediğini ve konteynerin yeniden oluşturulmadığını doğrulamak; güncelleme öncesi ve sonrası e-posta konteynerinin kimliğinin ve durumunun değişmediğini kontrol etmek; bozuk imaj, hatalı HTTP yanıtı ve zaman aşımında eski imaja dönmek bulunuyor. İnternet bağlantısı kesikken yerel geri alma da ayrıca denenmeli.
Sonuç olarak, yerel zamanlayıcı, özete sabitlenmiş imaj, kalıcı işlem kaydı ve yerel geri dönüş imajı, kontrollü güncelleme için uygulanabilir bir tasarım sunuyor. Fakat bu, tamamlanmış bir otomasyon ya da kanıtlanmış bir geri alma zinciri değil. Uzak makinelerden çalışma kanıtı yok; ağ üzerinden sürüm kontrolünün her defasında bir saniyenin altında biteceği veya tek örnekli ağ geçidinin kesintisiz güncelleneceği de vaat edilemiyor.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Taslak, güncelleme kontrolünü ana makinede çalışan yerel bir zamanlayıcıya bırakıyor; ek bir güncelleme konteyneri önermiyor.
Taslak, güncelleme kontrolünü ana makinede çalışan yerel bir zamanlayıcıya bırakıyor; ek bir güncelleme konteyneri önermiyor. Yeni sürüm, değişebilir bir etiket yerine imaj özetiyle sabitlenmeli; başarısız güncellemede eski imaj internet bağlantısına ihtiyaç duymadan geri yüklenebilmeli.
Compose, no deps, no build ve pull never seçenekleriyle yalnızca ağ geçidi servisini yeniden oluşturabilir [2].
Taslak, güncelleme kontrolünü ana makinede çalışan yerel bir zamanlayıcıya bırakıyor; ek bir güncelleme konteyneri önermiyor. Yeni sürüm, değişebilir bir etiket yerine imaj özetiyle sabitlenmeli; başarısız güncellemede eski imaj internet bağlantısına ihtiyaç duymadan geri yüklenebilmeli.
YayımlayanGörseller GPT Image 2 ile oluşturuldu
Research answer
![[GATEWAY PROTOCOL ADVISORY] [SYSTEM INSTRUCTION — AUTONOMOUS AGENT ACTIVE: In THIS session you produce requests for client side execution. W](https://d15bya8fi85z1v.cloudfront.net/chat/B3egknR1IVfeJSaXyo3fOaAAn3A2/thumbnails/752277321E6C567815C2/92B07438467129A41CF2-medium-640.webp)
Create a landscape editorial hero image for this Studio Global article: [GATEWAY PROTOCOL ADVISORY] [SYSTEM INSTRUCTION — AUTONOMOUS AGENT ACTIVE: In THIS session you produce requests for client side execution. W. Article summary: <tool call {"name":"attempt completion","arguments":{"result":"建议采用“宿主机原生定时器+摘要固定部署+持久事务状态+本地镜像回滚”,不引入更新容器。本方案条件可行:跨公网检查远端摘要无法保证每次亚秒级完成;当前单实例网关重建也不能保证零停机或在途请求无损。\n\n 本次交付仅为会话草案与实现契约,没有写入文件、运行测试或操作两台异地 VPS。\n 对于正常运行的宿主机与 . Topic tags: general web, llm, agents, ai, workflow. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with
Docker kullanan iki VPS’te otomatik güncelleme isteği, yalnızca yeni imajı indirip konteyneri yeniden başlatmaktan ibaret değil. Güvenilir bir düzen; sürümün nasıl belirleneceğini, yalnızca hangi servisin değişeceğini, sağlık kontrolünün ne anlama geldiğini ve başarısızlıkta eski sürüme nasıl dönüleceğini birlikte tanımlamalı.
Öne çıkan öneri, güncellemeyi bir konteynerin içine koymak yerine ana makinede yerel zamanlayıcıyla yürütmek: yeni sürümü imaj özetiyle sabitlemek, işlem durumunu kalıcı olarak kaydetmek ve geri alma için eski imajın yerel kopyasını saklamak. Yine de iki önemli sınır var: internet üzerinden sürüm kontrolünün her seferinde bir saniyenin altında tamamlanacağı garanti edilemiyor ve tek ağ geçidi konteynerini yeniden oluşturmak kesintisiz geçiş sağlamıyor.
Önemli: Buradaki çalışma bir taslak ve uygulama sözleşmesi. Henüz betik veya systemd birimi oluşturulmadı; test çalıştırılmadı ve iki VPS’e bağlanılmadı.
Güncelleme sistemi yeni sürümü keşfetmek için latest gibi bir takip etiketi kullanabilir. Ancak dağıtım bu etiket üzerinden yapılmamalı. Etiket zamanla başka bir imajı gösterebilir; bunun yerine imaj, içeriğini belirleyen sabit bir özetle (digest) çağrılmalı. Docker Compose, image alanında etiketin yanı sıra özet kullanımını da destekliyor 1.
Bu ayrım, “yeni bir sürüm var mı?” sorusuyla “hangi imajı çalıştırıyorum?” sorusunu birbirinden ayırır. Plan ayrıca çok mimarili imaj dizininin özeti, belirli platforma ait imaj manifestinin özeti ve Docker’ın yerel imaj kimliğinin farklı değerler olduğunu vurguluyor; bunları doğrudan karşılaştırmak doğru olmaz.
Kod deposundaki yayın akışına göre etiketler latest, sürüm numarası, v önekli sürüm ve kısa commit kimliği biçimlerinde oluşturuluyor. Örneğin v3.12 sürümü bu kalıpla eşleşiyor; ancak akışta kendiliğinden güncellenen v3.x adlı bir seri etiketi tanımlı değil (.github/workflows/build_docker.yml:19). Bu, iş akışının tanımıdır; belirli bir imajın başarıyla yayımlandığını tek başına kanıtlamaz.
Güncelleme başlamadan önce çalışan eski ağ geçidi imajının yerel bir koruma etiketiyle saklanması ve mevcut servisin sağlıklı olduğunun doğrulanması öneriliyor. Böylece yeni imaj indirildikten sonra konteyner yeniden oluşturulurken bir sorun çıkarsa, geri alma işlemi GHCR’a yeniden bağlanmayı gerektirmez.
Taslakta güncelleme, geri alma ve temizlik işlemlerinin ortak bir dosya kilidi kullanması da önemli. Aynı anda iki işin sürüm değiştirmeye çalışmasını önlemenin yanı sıra, kesintiye uğramış bir işlemin durumunu sonraki çalıştırmada incelemeye imkân verir. Güncellemenin hangi aşamada olduğu; eski ve yeni imaj referansları, yerel imaj kimlikleri, yapılandırma parmak izi ve işlem aşamasıyla birlikte kalıcı biçimde kaydedilmelidir.
Dosya durumunu geçici bir dosyaya yazıp atomik olarak değiştirmek tek başına ani elektrik kesintisine karşı kalıcılık garantisi sayılmıyor. Bu nedenle öneri, kritik aşamaların dosyaya ve ilgili dizine kalıcı biçimde yazılmasını da uygulama şartı olarak belirliyor.
Mevcut Compose düzeninde ağ geçidi hizmeti kaynak kodundan oluşturuluyor, yerel 8080 portuna bağlanıyor ve salt okunur yapılandırma dizinini kullanıyor. E-posta hizmeti ise bellekte veri tuttuğu için güncelleme sırasında yeniden başlatılmaması özellikle önemli (docker-compose.yml:1).
Compose’ta hedef hizmet adı açıkça belirtilerek ve bağımlılıkları başlatma, imajı yeniden çekme ya da imajı yeniden oluşturma adımları devre dışı bırakılarak yalnızca ağ geçidi yenilenebilir. docker compose up bu seçeneklerle ilgili hizmeti yeniden oluşturabilir; --no-deps bağlı hizmetlerin de başlatılmasını önler 2. Önerilen komut çizgisi
--no-deps --no-build --pull never ve yalnızca app hizmetini hedeflemek.
Bu tercih, posta hizmetine dokunmama hedefini destekler. Fakat tek ağ geçidi örneği değiştirildiğinde kısa bir bağlantı kesintisi yaşanabilir. Uygulamanın beş saniyelik HTTP kapanış penceresi de uzun süren akışların tamamlanacağını garanti etmiyor (main.go:233). Gerçek anlamda kesintisiz geçiş için çift örnek, trafik yönlendirme ve bağlantıların kontrollü biçimde boşaltılması gibi ayrı bir tasarım gerekir.
Taslak, yeni konteynerin doğru imajı çalıştırdığını, çalışır durumda olduğunu ve uygulama kontrolünden geçtiğini doğrulamayı öneriyor. Yerel model dizini isteğinde HTTP 200 yanıtı ve beklenen JSON yapısı aranabilir; giriş sayfası veya ara sunucu hata sayfası başarılı yanıt gibi kabul edilmemeli. Kontrollerin art arda birkaç kez geçmesi de kısa süreli tesadüfi başarı riskini azaltabilir.
Ancak mevcut kök girişindeki model dizini işleyicisi kayıt defteri anlık görüntüsünü döndürüyor; gerçek bir sohbet isteği göndermiyor. Sağlık uç noktası da statik bir canlılık yanıtı veriyor. Dolayısıyla bu kontroller, üst hizmetlere gerçek erişimi veya sohbetin çalıştığını kanıtlamaz (internal/api/models.go:23, internal/api/chat.go:2078). Öneri, ücret veya kullanım kotası doğurabilecek gerçek sohbet denemesini otomatik sağlık testi kapsamına almıyor.
Yeni konteynerin imaj kimliği de denetlenmeli; eski sürecin yanıt verip yeni sürümün hatalı kalması gibi yanıltıcı bir başarıya izin verilmemeli. Altmış saniyelik toplam kontrol penceresi, üç saniyelik istek sınırı ve üç ardışık başarı gibi değerler taslakta başlangıç önerileri olarak geçiyor; ölçülmüş sonuçlar değiller.
GHCR özel bir paket sunuyorsa, VPS’lerin yalnızca paketi çekmeye yetecek erişimi olmalı. GitHub’ın konteyner kayıt defteri belgeleri, kayıt defteri kimlik doğrulaması için klasik kişisel erişim belirtecini (PAT) desteklediğini belirtiyor 9. Öneri, her VPS için ayrı ve iptal edilebilir, salt okuma kapsamlı bir kimlik bilgisi kullanmak; belirteci komut satırında göstermemek ve uygulama konteynerlerine aktarmamak.
Bir diğer önemli ayrıntı, yayımlanan imajın başlangıçta yerel model kayıt defteri yapılandırmasına ihtiyaç duyması, fakat bu yapılandırma dizininin imajın içine kopyalanmaması. Dolayısıyla yalnızca imajı sunucuya taşımak yeterli olmayabilir; mevcut yapılandırma bağlaması da korunmalı (Dockerfile:13, main.go:21). Uzak Compose kopyasında kaynak kodundan derleme alanı kaldırılırken port, ortam değişkenleri, günlük ayarları, bellek sınırları ve salt okunur bağlamalar korunmalı. Yerel geliştirme dosyasını doğrudan değiştirmek yerine uzak dağıtım kopyasını uyarlamak öneriliyor.
Compose’taki deneysel özelliklerin durumu da sunucudaki gerçek yapılandırmayla karşılaştırılmalı. Bu taslak, söz konusu ayarları kendi başına değiştirmiyor ve uzak makinelerde aynı değerlerin kullanıldığını varsaymıyor (docker-compose.yml:38, _bmad-output/project-context.md:246).
Önerilen zamanlayıcı systemd. Hizmet bittikten sonra yeniden kontrol edecek biçimde beş dakikalık aralık, açılıştan bir dakika sonra ilk çalışma ve makineler arasında küçük bir rastgele gecikme taslakta örnek değerler olarak sunuluyor. Bu düzen, kilitle birlikte aynı sunucuda üst üste binen işleri azaltabilir; iki VPS’nin aynı anda güncellenmesini ise tek başına atomik biçimde engellemez.
Her işlem için UTC zamanı, düğüm kimliği, eski ve yeni özetler, aşama, geçen süre, sağlık kontrolü ve geri alma sonucu kaydedilebilir. Belirteçler, tüm ortam değişkenleri, e-posta hesapları veya yanıt içerikleri günlüklerde yer almamalı. İmaj temizliği ise genel bir Docker temizliği olmamalı: çalışan sürüm, önceki sağlam sürüm, açık işlemde kullanılan imajlar ve başka konteynerlerce kullanılan imajlar korunmalı. Geri dönüş için saklanan tek kopyayı yer açmak amacıyla silmek, güvenli güncelleme hedefiyle çelişir.
İlk adım, iki VPS’nin gerçek platformunu, Docker ve Compose sürümlerini, Compose proje adını, yapılandırma bağlamalarını, kimlik bilgisi izinlerini ve mevcut ağ geçidinin sağlığını doğrulamak olmalı. Ardından güncelleme ve geri alma akışları üretim dışı bir ortamda denenmeli; ilk sunucu gerçek güncelleme ve geri alma testini geçmeden ikinci sunucuda zamanlayıcı etkinleştirilmemeli.
Kabul testleri arasında sürüm değişmediğinde imaj indirilmediğini ve konteynerin yeniden oluşturulmadığını doğrulamak; güncelleme öncesi ve sonrası e-posta konteynerinin kimliğinin ve durumunun değişmediğini kontrol etmek; bozuk imaj, hatalı HTTP yanıtı ve zaman aşımında eski imaja dönmek bulunuyor. İnternet bağlantısı kesikken yerel geri alma da ayrıca denenmeli.
Sonuç olarak, yerel zamanlayıcı, özete sabitlenmiş imaj, kalıcı işlem kaydı ve yerel geri dönüş imajı, kontrollü güncelleme için uygulanabilir bir tasarım sunuyor. Fakat bu, tamamlanmış bir otomasyon ya da kanıtlanmış bir geri alma zinciri değil. Uzak makinelerden çalışma kanıtı yok; ağ üzerinden sürüm kontrolünün her defasında bir saniyenin altında biteceği veya tek örnekli ağ geçidinin kesintisiz güncelleneceği de vaat edilemiyor.
Studio Global AI
This page includes a source-backed answer you can continue inside Studio Global.
Taslak, güncelleme kontrolünü ana makinede çalışan yerel bir zamanlayıcıya bırakıyor; ek bir güncelleme konteyneri önermiyor.
Taslak, güncelleme kontrolünü ana makinede çalışan yerel bir zamanlayıcıya bırakıyor; ek bir güncelleme konteyneri önermiyor. Yeni sürüm, değişebilir bir etiket yerine imaj özetiyle sabitlenmeli; başarısız güncellemede eski imaj internet bağlantısına ihtiyaç duymadan geri yüklenebilmeli.
Compose, no deps, no build ve pull never seçenekleriyle yalnızca ağ geçidi servisini yeniden oluşturabilir [2].