в чем основное отличие Docker от Snap?

38

В недавнем c't (к сожалению paywalled ) есть статья о Snap и Flatpak.

Это звучит очень похоже на Docker, много понятий одинаковы. Теперь мой вопрос: в чем разница между Snap и Docker? Являются ли эти разные варианты использования?

    
задан Fyodor Glebov 05.08.2016 в 17:31
источник

1 ответ

45

Вы можете найти Разговор Марка Шаттлворта «Почему нам нужен другой контейнер для приложений» в Container Camp на ваш вопрос. Вначале он рассказывает о виртуальных машинах, контейнерах и Docker, продолжая делать снимки и о том, как они вписываются примерно через девять минут. Вот мое резюме:

  • Различные типы контейнеров выглядят одинаково, но используются для разных целей.
  • Контейнеры на самом деле не существуют на уровне ядра. Возможны различные виды иллюзий. Независимо мы можем создавать иллюзии о том, что видит пользователь, сеть, диск и процессы, которые видит контейнер.
  • Различные типы контейнеров действительно относятся к различным классам созданных иллюзий.
  • Защелки:
    • Неизменяемая, но все еще часть базовой системы.
    • Интегрированный с точки зрения сети, поэтому совместно используйте IP-адрес системы, в отличие от Docker, где каждый контейнер получает свой собственный IP-адрес.
    • Другими словами, Докер дает нам вещь there . Snaps дает нам вещь здесь . Например, на рабочем столе snap предоставляет приложение прямо на нем.
    • Защелка не может загрязнять остальную часть системы. Это в собственной коробке. Но он все еще может видеть (только для чтения) остальную часть системы, которая позволяет ей говорить и интегрироваться с системой.

Вы спрашивали о различных случаях использования по сравнению с Docker. Вот что можно сделать, но Docker не может: настольные приложения. Третьи стороны могут отправлять настольные приложения с помощью привязок, и пользователи могут легко установить и обновить их. Контейнер Docker не может (легко) взаимодействовать с пользователем графически на экране, загружать документы из домашнего каталога пользователя или предоставлять видеоконференции через веб-камеру пользователя. Защелки могут (после разрешения).

Вы можете спросить, как это лучше, чем использование PPA. Но по сравнению с Docker, это похоже на то, как Docker лучше, чем устанавливать зависимости от системы вручную. Это лучше, но точно, как, вероятно, лучше всего ответить на отдельный вопрос, не относящийся к Докеру.

    
ответ дан Robie Basak 06.01.2017 в 16:32
источник