От ownCloud к Nextcloud

Вместо предисловия

Я написал эту статью, чтобы помочь собрать разрозненные куски информации по теме «ownCloud и Nextcloud». К нам на сайт часто попадают по запросам «owncloud vs. nextcloud» и «сравнение owncloud с nextcloud». Безусловно, я не могу точно сказать, что хотят найти люди, используя эти поисковые запросы, но пообщавшись с нашими пользователями и почитав комментарии к нашим статьям, у меня сложилась в голове картина, что люди немного сбиты с толку наличием двух похожих друг на друга решений. Они хотят сделать выбор, но так, чтобы потом не было за него мучительно больно. Так появилась достаточно длинная статья, которая стремится осветить эту тему с разных сторон. Однако многое из сказанного здесь может показаться читателю избыточным, особенно если он просто хочет найти ответ на простой вопрос: «Что использовать, ownCloud или Nextcloud?». Таким образом, я сейчас постараюсь ответить на этот вопрос, а потом расскажу подробно обо всем остальном.

То, что произошло с ownCloud, напоминает чуть более известную историю раскола проекта OpenOffice.org на, собственно, сам OOo и LibreOffice. Подавляющее большинство пользователей сразу мигрировали на LibreOffice, а остальные остались на OOo, и оставались на нем до тех пор, пока не стало очевидно, что этот проект находится в глубокой стагнации. Вряд ли можно найти более подходящую аналогию для того, чтобы описать ситуацию, которая сложилась вокруг ownCloud. Все ключевые разработчики этого проекта ушли работать над Nextcloud, который ответвился от оригинальной кодовой базы ownCloud 2-го июня 2016-го года. ownCloud все еще находится на плаву, но вся движуха теперь происходит в Nextcloud. За пару лет моих наблюдений могу сказать, что Nextcloud развивается в лучших традициях ownCloud Community Edition, свободной версии платформы. Изменилось только имя. Дальше можно долго рассказывать о причинах раскола и к чему он привел, но думаю, что основная мысль понятна — будущее за Nextcloud. А теперь обо всем по порядку.

Становление ownCloud

Проект ownCloud был анонсирован на конференции Camp KDE 2010 и стартовал в рамках инициативы KDE Social Desktop (о которой, кстати, подробно рассказывалось в в 122-м выпуске журнала Linux Format). Он задумывался как свободный аналог закрытых решений, самыми известными из которых в то время были Dropbox и Ubuntu One. В качестве языка программирования для нового проекта был выбран PHP. Во время моего первого знакомства с ownCloud вопрос «А почему же все-таки PHP?» занимал меня меньше всего. Позднее, я сильно удивился, когда узнал из блога основателя проекта, Фрэнка Карличека (Frank Karlitschek), что выбор был вполне осознанным. Несмотря на плохую репутацию языка, разработчики отдали ему предпочтение из-за того, что
* PHP является очень популярным: он хорошо знаком большинству разработчиков и его можно найти почти на каждом сервере;
* PHP является «языком сценариев» в том смысле, что в нем отсутствует этап сборки, как в компилирующих языках программирования, за счет чего запуск проектов на PHP, по мнению разработчиков, становится еще проще;
* PHP является достаточно быстрым в умелых руках, что видно по таким проектам, как Facebook и Wikipedia;
* на PHP написано огромное количество кода, которое можно переиспользовать, что очень важно для такого проекта, как ownCloud.

Не все из вышеперечисленного звучит убедительно, но мне кажется, что очень сложно категорически с чем-то из этого не согласиться.
Разработчикам потребовалось полгода на то, чтобы подготовить первую стабильную версию со знаковым номером 1.0, которая вышла 24-го июня 2010-го года. Еще примерно через полгода в США была зарегистрирована компания ownCloud Inc. с целью упрощения привлечения инвестиций и финансирования ключевых разработчиков проекта. Это событие ознаменовало превращение ownCloud в полностью самостоятельный проект (напомню, что с самого начала он развивался в рамках проекта KDE).

Укрепление позиций ownCloud

ownCloud всегда развивался очень быстро. Тремя яркими примерами, которые пришлись на один год, стали возможность установки сторонних приложений из каталога apps.owncloud.com, запуск коммерческой версии платформы и выход десктопного клиента для синхронизации файлов с облачным хранилищем. Однажды Фрэнк Карличек, основатель ownCloud, сказал, что проект заполняет существенный пробел в мире свободного программного обеспечения, т.к. защищает наши персональные данные. Но этого, к сожалению, не достаточно для распространения проекта в широких кругах, поэтому наличие на заре ownCloud полноценного клиента для синхронизации файлов было необходимым для роста популярности проекта. Кстати, запуск каталога приложений также положительно сказался на популярности ownCloud, т.к. разбавил сообщество пользователей независимыми разработчиками.

Когда ownCloud стал развиваться в рамках коммерческой компании, у разработчиков появились обязательства и ответственность перед инвесторами и клиентами в дополнении к обязательствам и ответственности, которые у них уже были перед пользователями свободной версии платформы. Коммерческая версия ownCloud развивалась согласно модели Open Core, при которой в свободном доступе распространялась только базовая часть системы ownCloud Community Edition, а расширенные функции поставлялись в рамках продукта ownCloud Enterprise Edition. (Одним из первых, кто предложил термин Open Core, стал создатель MySQL, а позднее и MariaDB, Майкл Видениус (Michael Widenius). Тем не менее, этот термин на первых порах имел негативный оттенок, но позднее зарекомендовал себя как неплохой способ монетизации свободного программного обеспечения.) Какое-то время все шло хорошо, но в один прекрасный момент основатель проекта покинул ownCloud Inc. недовольный тем, что компания уделяет мало внимания сообществу и ставит в качестве первоочередной цели отстаивание своих коммерческих интересов. Это привело к расколу проекта.

Появление Nextcloud

Nextcloud появился 2-го июня 2016 года в результате ответвления (или форка) от кодовой базы ownCloud 9 с целью независимого развития платформы, которая была бы лишена известных недостатков. Так, к примеру, больше не требовалось подписание соглашения о передаче имущественных прав на код для упрощения участия в разработке нового проекта представителей сообщества. Более того, в Nextcloud 9, которая стала первой версий платформы выпущенной после форка, были включены многие расширенные возможности, которые поставлялись в рамках ownCloud Enterprise Edition. Также было выпущено собственное клиентское приложение под Android для синхронизации файлов, которое, в отличии от оригинального, стало бесплатным в Google Play. Позднее было выпущено приложение под iOS, которое также стало бесплатным в AppStore. Все это, а также многое другое, говорит о том, что разработчики новой платформы отказалась от модели Open Core и решили распространять весь enterprise-функционал открыто. В рамках коммерческой компании Nextcloud GmbH было решено предоставлять коммерческую техническую поддержку всем тем, кто использует платформу в продакшене или создает собственные продукты на базе Nextcloud. Эту модель давно использует компания Red Hat, зарабатывая таким образом больше $2 млрд в год, и разработчики Nextcloud решили последовать ее примеру.

Nextcloud сегодня

Еще во времена ownCloud платформа превратилась в нечто большее, чем средство для создания облачного хранилища данных на собственных вычислительных мощностях. По функционалу Nextcloud не уступает популярным облачным сервисам вроде Google Docs, Google Calendar, Delicious, а также имеет важное преимущество — сохранность приватных данных. Клиенты для синхронизации файлов заслуживают особое внимание. Они не только не уступают клиентам для Dropbox и других подобных сервисов, но и возможно даже в чем-то превосходят их, но это исключительно субъективное замечание. Когда мы презентовали свой собственный продукт на базе Nextcloud, мы были удивлены насколько сильный положительный эффект оказывает мобильный клиент на зрителей, которые не знакомы с платформой. Возможно дело в том, что люди до сих пор не ожидает такого хорошего качества от свободного программного обеспечения.

Заключение

В данный статье я попытался рассказать об эволюции ownCloud, и о том, как проект превратился в Nextcloud, коснулся темы принципиальных различий двух проектов, а также ответил на наиболее часто задаваемый, по моему опыту, вопрос: «Что использовать, ownCloud или Nextcloud?».

P.S. Наша команда использовала для собственных нужд сначала ownCloud, а затем успешно мигрировала на Nextcloud, и пользуется им до сих пор. Полученный от использования платформы опыт, позволил нам двинуться дальше и создать свой собственный продукт на базе Nextcloud. Мы с удовольствием делимся опытом в своих публикациях на Пикабу, Хабре и в русскоязычной версии Linux Format, а также предлагаем коммерческую техническую поддержку. По всем вопросам пишите на info@cusdeb.com.

3 Replies to “От ownCloud к Nextcloud”

  1. Искал информацию о блокировке nextcloud ростелекомом. Провайдер “onlime”, сайт nextcloud не открывается, обновиться нормально никак, даже настройки проверить не может, в административной части в предупреждениях висит “Произошла ошибка при проверке настроек сервера”. Понятно, что обновить не проблема, vpn и ручками, но само хранилище тоже начало тормозить в определенные моменты, возможно в процессе работы идут какие-то запросы к серверу nextcloud? Очень не хочется переходить на owncloud или seafile. Что делать непонятно, прописанные на машине правила iptables:
    -I INPUT -p tcp –sport 80 -m string –string “Location: http://warning.rt.ru” –algo bm -j DROP
    -I INPUT -p tcp –sport 443 –tcp-flags RST RST -j DROP
    не помогают, хотя с блокировками других сайтов вопрос решают.

    1. Здравствуйте.
      Здесь я мало могу, что посоветовать, т.к. обновляю все инстансы Nextcloud из официального репозитория на GitHub. Если точнее, то регулярно собирается Docker-образ на основе последней стабльной версии Nextcloud и по требованию обновляется у нас на серверах. Я замечаю перебои с доступом к официальному сайту Nextcloud, но существенного дискомфорта это мне не доставляет.

Leave a Reply to Guest Cancel reply

Your email address will not be published. Required fields are marked *