Docker ve Snap arasındaki temel fark nedir?


85

Son zamanlarda (ne yazık ki ödeme duvarı ), Snap ve Flatpak hakkında bir makale var.

görüntü tanımını buraya girin

Bu Docker'a çok benziyor, birçok konsept aynı. Şimdi sorum, Snap ve Docker arasındaki fark nedir? Bunlar farklı kullanım durumları mı?

Yanıtlar:


109

Sen bulabilir Konteyner Kampı'nda "Biz uygulamalar için tamamen farklı bir konteyner ihtiyaç Neden" Mark Shuttleworth konuşmasını sorunuzun ilgili. Başlangıçta genel olarak VM'ler, konteynerler ve Docker hakkında konuşuyor, enstantane ve yaklaşık dokuz dakika içinde nasıl sığdıklarına devam ediyor. İşte özetim:

  • Farklı tipteki kaplar aynı görünür ancak farklı amaçlar için kullanılır.
  • Kaplar çekirdek düzeyinde gerçekten yok. Farklı yanılsama türleri mümkündür. Bağımsız olarak, kullanıcıların, ağın, diskin ve bir kabın gördüğü işlemlerle ilgili yanılsamalar yaratabiliriz.
  • Farklı kap türleri, yaratılan yanılsamaların farklı sınıflarıyla ilgilidir.
  • Oturana:
    • Düşünülebilir, ancak hala temel sistemin bir parçası.
    • Ağ açısından entegre olduğundan, her bir konteynerin kendi IP adresini aldığı Docker'dan farklı olarak sistem IP adresini paylaşın.
    • Başka bir deyişle, Docker bize orada bir şey veriyor . Snaps bize burada bir şey verir . Örneğin, bir masaüstünde bir çıtçıt üzerinde bir uygulama sağlar.
    • Bir çırpma, sistemin geri kalanını kirletemez. Kendi kutusunda. Ancak, sistemin geri kalanını hala görebiliyor (salt okunur), bu onun sistemle konuşmasını ve bütünleşmesini sağlıyor.

Docker'a kıyasla farklı kullanım durumları hakkında sormuştunuz. İşte oturanların yapabileceği bir tanesi ama Docker yapamaz: masaüstü uygulamaları. Üçüncü taraflar, masaüstü uygulamaları anlık görüntüleri kullanarak gönderebilir ve kullanıcılar bunları kolayca yükleyip güncelleyebilir. Bir Docker kabı, kullanıcıyla ekranda grafik olarak etkileşime giremez, kullanıcının giriş dizininden belge yükleyemez veya kullanıcının web kamerası aracılığıyla video konferansı sağlayamaz. Snaps olabilir (bir kez izin verilir).

Bunun nasıl PPA kullanmaktan daha iyi olduğunu sorabilirsiniz. Ancak Docker’la karşılaştırıldığında, Docker’ın eldeki bir sisteme bağımlılıklar kurmaktan nasıl daha iyi olduğunu sormak gibi. Daha iyi, ama tam olarak Docker'a özgü olmayan bir soruda en iyi nasıl cevap verileceği kesin.


3
Bu doğru değil. Docker, masaüstü uygulamalarıyla etkileşime girebilir (izin verildiğinde). github.com/jamrizzi/docker-gtk
Jam Risser

2
Bu pencereler için Sandboxie gibi geliyor. Sanal alan programları iletişim kutularını açabilir, tüm yerel dosyalara erişebilir, ancak yazdıklarında sanal alanlarına yazabilirler.
feedc0de

1
Bağladığınız bu araç normal bir liman işçisi sisteminden farklı olarak ne yapar? X11 soketinizi, herhangi bir özel yerleştirici sürümü olmadan yerleştiriciye monte edebilirsiniz.
feedc0de

1
Bu bir araç değil, bu bir gösteri
Jam Risser

1
@jamrizzi Yaptığınız şey bir komut dosyasındaki X11 soketine liman işçisi erişimi sağlıyor gibi görünüyor. Bu, kullanıcının yine de bu süreçte yer almasından oldukça uzaktır ("Docker Ekrana erişmek istiyor. İptal veya İzin
Verilsin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.