1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Обзор Ghost 3

Обзор Ghost 3.0. Достойная альтернатива WordPress

С момента появления на Kickstarter блог-платформа Ghost наделала много шума. Свободный во всех планах движок, нацеленный на полное погружение в написание постов. Разработчики выпустили первую версию в октябре 2013, пообещав простой и удобный интерфейс для ведения своего блога. А для тех, кому этого мало, дали возможность установить Ghost на свой собственный сервер. И всё это совершенно бесплатно

Достоинства

  1. Open-source движок.
  2. Лёгкость настройки.
  3. Простой и понятный интерфейс админки.
  4. Возможность использовать облачную версию.

Недостатки

  1. Редактор темы на GitHub.
  2. Сложно найти готовые шаблоны и плагины.
  3. Техподдержка на английском языке.

Ghost — некоммерческая организация, цель которой построить максимально удобный и доступный движок. Вся прибыль идёт обратно, на развитие платформы. Исходный код открыт и доступен всем абсолютно бесплатно.

Настройка

Как ленивый человек, я пользуюсь облачной версией Ghost, и поэтому я на свой сервер не стал ничего устанавливать, а сразу зарегистрировался на сайте.

Новый блог создаётся за секунду. Всё, что нужно указать — адрес блога на сервере Ghost и свой домен (если нужно). Между прочим, подключение к своему домену происходит так же быстро. Не нужно ждать сутки, пока обновится DNS. Ещё один из плюсов — поддержка всех «фишек» CloudFlare прямо «из коробки».

Изначально ваш будущий блог будет основан на стандартной теме, но можно выбрать любую из магазина тем, или купить её на стороннем сайте. Ну, либо создать свою.

Как вариант, можно поискать дополнительные ассеты на TemplateMonster. На их сайте можно найти различные темы, плагины, шаблоны и графику. А с подпиской One можно получить все это бесплатно и без ограничений. На некоторые дополнительные продукты действует скидка до 50%. А по коду themarfa можно получить дополнительную скидку.

Код темы придётся хранить на GitHub или подобном сервисе. Лучше использовать GitHub, так как с ним есть автоматическая интеграция, и изменения сразу же будут отражены на сайте.

У Ghost есть гибкое API, и вы можете настроить любые интеграции. Поэтому можно использовать более удобные решения для хранения кода.

Для разработчиков доступна очень подробная инструкция, дружелюбная и быстрая техподдержка.

Сама тема состоит из нескольких вспомогательных файлов и дополнительных наборов скриптов, которые в конечном счёте рендерят ваш будущий блог:

Ghost является headless CMS, и почитать о всех используемых технологиях можно на этой странице. Ниже я расскажу о возможностях платформы, которые поставляются сразу в любой теме без каких-либо настроек и интеграций. Однако учтите, что можно добиться чего угодно от Ghost при наличии грамотного разработчика.

Для переезда с WordPress есть специальный инструмент, который поможет быстро поменять CMS.

Возможности движка

Движок Ghost рассчитан на самые различные применения: от простых текстовых блогов до профессиональных СМИ с любым типом контента. Среди пользователей платформы Mozilla, Nasa, DuckDuckGo и Apple.

Управление сайтом

Вы сами полностью управляете внешним видом и параметрами сайта. Ghost никогда и нигде не ставит свои лого.

Можно создавать как отдельные страницы, так и обычные посты. Меню навигации по сайту полностью управляется из админки и не требует изменения кода для добавления новых пунктов. Можно создавать многоуровневую навигацию.

Весь сайт можно защитить паролем. Для каждого поста в отдельности или сайта целиком поддерживается инъекция кода. Можно легко управлять параметрами языка, редиректами и часовыми зонами ресурса.

Подписки и платный контент

Ghost позволяет создавать платный контент, открывая к нему доступ подписчикам вашего ресурса. Вы сами выбираете, какие посты будут доступны всем, а какие по подписке.

Форма оплаты и подписки доступна «из коробки». Но для России про эту возможность можно забыть. Для оплаты и вывода денег используется Stripe, который в нашей стране не даст получить деньги. Остальные могут насладиться удобным инструментом управления подписчиками, настроить подписку с нужным периодом списания денег. Сама платформа не берёт никаких комиссий.

Редактор постов

Редактор постов поддерживает Markdown и визуальное редактирование текста. С помощью горячих клавиш или всплывающих меню можно легко менять шрифты, вёрстку и добавлять нужные элементы.

Редактор поддерживает функцию Drag’n’Drop. В тело поста без каких-либо трудностей можно вставлять HTML-код и iFrame. Сам редактор поста можно открыть на весь экран с минимальным количеством лишних элементов, и творить.

Галереи

Обычно при загрузке картинок на сайт их нужно оптимизировать. Иначе страница будет грузиться бесконечно. Ghost автоматически и без каких-либо настроек оптимизирует все изображения для веб без потери качества.

Изображения можно вставлять как по одному, так и создавать галереи из девяти картинок.

Все изображения автоматически изменяют размер так, чтобы красиво подстроится под вёрстку сайта.

Единственный минус — Ghost не поддерживает лайтбоксов. Для того чтобы пользователь смог нажать на картинку и посмотреть её в полном размере, вам придётся самостоятельно писать код.

Из плюсов стоит отметить интеграцию со стоком Unsplash. Не выходя из редактора поста можно быстро добавить нужную картинку.

Карточки-закладки

Интересная, но малополезная для меня возможность создавать карточки-закладки. Если в редактор просто вставить ссылку, то она превратится вот в такое красивое превью и привлечёт внимание читателя.

Интеграции

Выше я уже несколько раз сделал акцент на открытости API. Но Ghost поддерживает интеграции с десятком сторонних сервисов.

Благодаря интеграции с Zapier число таких сервисов увеличивается до нескольких сотен. Поэтому можно автоматизировать практически любые действия.

Приведу пару примеров того, что настроено у меня:

  • У меня есть английская версия сайта. Посты, опубликованные на основном сайте, автоматически переводятся на английский язык и сохраняются в черновики на английском сайте.
  • После публикации любого поста подписчики получают Push-оповещения, а анонс автоматически уходит в социальные сети и почтовую рассылку.

Возможности при публикации

Постам и страницам можно добавлять публичные и скрытые теги. Публичные видны посетителям и используются для навигации по сайту. Внутренние не видны и используются для структуризации контента.

Посты можно помечать как Featured, и с помощью CSS темы выделить их среди прочего контента сайта.

Для поисковиков и социальных сетей можно настроить индивидуальные значения Open Graph и контролировать отображение ваших публикаций.

Для постов можно создать несколько шаблонов, выбрать нужный в редакторе и применить дизайн шаблона к посту. Таким образом можно создавать индивидуальную вёрстку для постов.

Посты можно планировать для автоматической публикации в нужное время.

Постам можно назначить одного или несколько авторов.

Для каждого автора создаётся страница со всеми его постами. Для всех публикаций автоматически генерируется RSS-фид с поддержкой подкаст-формата для анонса в iTunes и подобных сервисах.

Если в WordPress нужно устанавливать специальные плагины для SEO-оптимизации, то в Ghost всё работает сразу. Вся разметка постов автоматически генерируется в соответствии с современными стандартами. Не важно, что это — текст, картинка, тег или RSS.

Для всех сайтов сразу же доступен sitemap и файл robot.txt. При публикации платформа посылает RPC Ping в поисковики и даёт им знать о новом контенте.

Как я говорил выше, есть индивидуальная настройка Open Graph и мета-информации постов. При публикации платформа сама генерирует читаемые ссылки на посты, а к нужным публикациям добавляет параметр rel=»canonical».

«Из коробки» для всех страниц создаётся AMP-копия, которая будет автоматически открываться на медленных устройствах.

Сам движок работает в 20 раз быстрее WordPress.

Управление командой

В Ghost есть гибкий инструмент управления командой с назначением ролей для каждого участника. Кто-то может только готовить посты, кто-то публиковать, а кто-то занимается админкой.

Для каждого участника можно настроить публичный профиль.

Важно ещё раз отметить, что при установке на свой сервер вы можете использовать движок абсолютно бесплатно. При оплате Ghost все проблемы с работой движка, серверов, DDOS-атак на себя берут разработчики. При этом ваш контент остаётся только вашим. Вы полностью им управляете и владеете.

Я пользуюсь платной версией с 2015 года, и съезжать с платформы не планирую.

Стоимость подписки часто меняется с развитием возможностей Ghost. Но для старых пользователей цена не меняется, если они сами не решают сменить тарифный план.

Читать еще:  NVIDIA Shield TV обновляется до Android Marshmallow

Основной параметр, определяющий стоимость подписки, — количество посетителей вашего сайта. При этом, если ваш сайт посещает 20 000 человек в месяц, но какой-то пост неожиданно завирусился и трафик вышел за оплаченный тариф, вас не отключат.

Наоборот, разработчики хотят, чтобы ваш ресурс оставался доступным всегда. Например, я очень долго сидел на тарифе с 50 000 посетителями в месяц, хотя по факту их было около 100 000. Разработчики лишь недавно попросили меня сменить тариф на более подходящий. Сделали это заблаговременно и помогли мне с частичной оплатой.

Если вы хотите развернуть движок на своём сервере, но руки растут не от туда, можно заказать установку у разработчиков Ghost. Это обойдётся в $99 за разовую установку или можно оформить ежемесячную оплату для получения постоянной техподдержки. В этом случае вы не будете ограничены тарифными планами, указанными выше.

Полный список функций движка, API и прочее можно посмотреть здесь. А я в свою очередь рекомендую Ghost как отличную альтернативу Wordress. Этот движок отлично подходит независимым авторам, СМИ, начинающим блогерам и многим другим.

Установка и настройка прокси-сервера 3proxy на Debian/Ubuntu

Введение

В этой статье мы расскажем, как установить и настроить прокси-сервер.

Прокси-сервер (от англ. proxy — «представитель, уполномоченный»)
выступает в роли посредника в коммуникациях между вашим ПК/мобильным и Интернетом.

Причин использовать его может быть множество, включая:

  • Обход ограничений доступа к определенным веб-ресурсам установленным администратором локальной сети.
  • Обход региональных ограничений доступа у определённых веб-ресурсов.
  • Анонимный доступ к веб-ресурсам путём сокрытия реального IP-адреса.

Среди всего многообразия прокси-серверов остановим свой выбор на открытом бесплатном кроссплатформенном сервере от Владимира ‘3APA3A’ Дубровина — 3proxy опубликованный под BSD-подобной лицензией. Текст лицензии.

Среди альтернатив можно выделить Squid, но он:

  • Сложен в настройках.
  • Потребляет больше ресурсов.
  • Не скомпилирован с поддержкой SSL по умолчанию и сложен для компиляции.

Также внимание заслуживает tinyproxy.

Преимущества и недостатки:

Он включает в себя:

  • HTTP прокси с поддержкой HTTPS и FTP.
  • SOCKSv4/SOCKSv4.5/SOCKSv5 прокси.
  • POP3 прокси.
  • SMTP прокси.
  • AIM/ICQ прокси.
  • MSN messenger / Live messenger прокси.
  • FTP прокси.
  • Кэширующий DNS прокси.
  • TCP и UDP портмапперы.

Так же доступны дополнительные возможности, такие как:

  • Управление доступом.
  • Ограничение ширины потребляемого канала.
  • Ограничение трафика на день, неделю и месяц.
  • Перенаправление соединений.
  • Построение цепочек соединений.
  • Ротация лог-файлов.
  • Ведение журналов через ODBC и syslog.
  • Поддержка IPv6.
  • и ряд других.

К недостаткам можно отнести:

  • Отсутствие поддержки кеширования веб-страниц.
  • Отсутствие в официальных репозиториях некоторых linux-дистрибутивов (включая Debian и Ubuntu), но в репозиториях Gentoo, RedHat, Alt Linux присутствует.

Технические требования

  • Операционная система Debian GNU/Linux (версии с 7 по 9) или Ubuntu (версии с 14.04 по 17.04) любой разрядности (32/64 бита).
  • Пользователь с привилегиями root (как вариант доступ через sudo).

Шаг 1. Подготавливаем инструментарий

В связи с тем что он отсутствует в официальных репозиториях Debian и Ubuntu, мы будем устанавливать его из исходников.

Но перед этим установим всё необходимое для дальнейшей работы.

Шаг 2. Скачиваем и распаковываем исходники

Последняя версия 0.8.10 (на момент написания руководства).
Узнать последнюю версию можно на официальном сайте, при необходимости просто замените цифры на необходимые в следующих парах команд:

Шаг 3. Компилируем

Шаг 4. Устанавливаем

Копируем получившийся бинарный файл:

Создадим отдельного системного пользователя proxy3 от имени которого и будет работать сервер:

Узнаём UID и GID пользователя командой:

В ответ, например, получим:

Создаём файл настроек:

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Комментарии начинаются со знака # и допустимы только с начала строки.
Рекомендуется вообще удалить комментарии для более стабильной работы 3proxy.
Рекомендуется также использовать другой порт вместо стандартного 3128 для прокси серверов, лучше всего из диапазона 49152—65535.

Другие примеры настроек можно посмотреть командами:

или же в одном из следующих руководств на которые ссылается официальный сайт:

Вот пример конфигурации без ведения логов:

Создаём файл с пользователями и паролями:

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Где логин: username и пароль: strongpassword следует изменить на свои.

Каждый новый пользователь указывается с новой строки.

Выставляем права доступа к файлам прокси-сервера:

Создаём папку для ведения логов и назначаем права на неё:

В случае наличия IPv6 на сервере,
рекомендуем запускать прокси со следующей строкой в /etc/3proxy/3proxy.cfg:

для сервера с IPv4:95.213.255.16 и IPv6:2002:5fd5:ff010::1 у вас же они будут иные.
В таком случае будет поддержка IPv6 на выходе с прокси,
например https://yandex.ru/internet отобразит оба адреса.

Шаг 5. Добавляем в автозагрузку и запускаем прокси-сервер

Вставляем в него следующий код:

(вставка из буфера обмена возможна по клику правой кнопки мыши или Ctrl+U или F10)

(Для сохранения и закрытия нажмите CTRL+X затем Y)

Ещё один вариант скрипта инициализации:

Делаем файл исполняемым:

Добавляем в автозагрузку:

В консоли мы увидим сообщение:

Проблемы с запуском чаще всего связаны с файлом /etc/3proxy/3proxy.cfg
в т.ч. к последней строке файла. При возникновении ошибки обычно указан порядковый номер проблемной строки.

Также мы увидим его в списке запущенных процессов в ответе на команду:

Шаг 6. Открываем порт

Открываем порт (3128/tcp) на сервере.
Либо указываем свой, который указан в файле /etc/3proxy/3proxy.cfg

При использовании iptables:

Шаг 7. Настраиваем окружение

Множество программ (включая веб-браузеры) поддерживают работу через прокси по умолчанию. Интерфейс настроек у каждой свой.

Если же программа не поддерживает, то возможна настройка
работы всех соединений через прокси в параметрах используемой вами операционной системы.

Либо использование программы проксификатора.
Например такой как:

Настройки для браузера Google Chrome:
Для подключения к сети Google Chrome использует системные настройки прокси-сервера.
В случае Microsoft Windows это настройки можно также найти в Internet Explorer / MS Edge.

Форма с предложением ввода логина и пароля (username:strongpassword) появится, после первой попытки открытия любой веб-страницы.

Затем любые сервисы по проверки IP-адреса,
например, такие как:

сообщат IP-адрес вашего Vscale-сервера вместо текущего.

Шаг 8. Удаляем временные файлы

Шаг 9. (ОПЦИОНАЛЬНО) Удаляем 3Proxy

Так как установка осуществлялась из исходников, то пакетный менеджер операционной системы бесполезен. Для удаления выполните следующие команды:

Заключение

Мы рассмотрели установку и базовую настройку 3proxy. Безусловно у данного прокси-сервера есть еще множество настроек, которые мы не затронули, в том числе настройку SOCKS-прокси, построение цепочек соединений, управление доступом, ограничение ширины потребляемого канала, ограничение трафика по времени, но это тема уже для отдельного руководства.

Таким образом после выполненных действий вы получаете свой собственный прокси-сервер, который более безопасен для вас, так как ваш трафик заведомо не будет перехвачен и проанализирован третьими лицами, от чего вы не застрахованы при использовании сторонних решений. Хотя с этой точки зрения более эффективна настройка VPN-туннеля с шифрованием.

3proxy может выступать в роли высоко-анонимного прокси-сервера. Признаком использования подобного может быть лишь принадлежность выходного IP-адреса сервера к пулу адресов закреплённых за хостинговой компанией при просмотре WHOIS-данных и PTR-записи. В целом он хорош тем, что является маленьким и простым, но в то же время функциональным.

  • Facebook
  • Twitter
  • LinkedIn

Комментарии

Настройка socks прокси написано не раскрыта, а с грядущим закрытием телеграмма крайне полезная информация была бы. Не могли бы дополнить статью, что нужно сделать. Очень нужно. Всем

Danil Walk, в руководстве есть не меньше чем 3 ссылки на разные документации по данному прокси-серверу но расскажу как и SOCKS поднять. Документация в целом достаточно полная, по непонятным вопросом всегда можно вежливо спросить ведущего разработчика по email, или на том же Тостере как люди так и разработчик активно отвечают. Он кстати просматривал данную статью. Дал несколько советов по конфигам, совет по IPv6. Заметил что в шаге 5 не самый удачный пример скрипта-инициализации, но рабочий.

Должен предупредить: на данный момент обходить блокировки РКН с серверов расположенных на территории РФ — не лучшая идея. Особенности блокировок на стороне дата-центров я намеренно обсуждать здесь не хочу. Но сам лично наблюдал блокировки/заглушки web-страниц с серверов расположенных в МСК, СПБ. При подробном разборе ситуации, просмотре логов, трассировок и т.д. выяснялось что зачастую причиной были блокировки на стороне крупных транзитных операторов связи таких как ТрансТелеКом. На блокировки на стороне ТТК натыкаются порой и жители стран СНГ, некоторые хоть и имеют свои национальные аналоги РКН, но там блокировки именно российские проскакивают.

SOCKS-прокси

SOCKS-прокси имеют несколько версий протокола (SOCKSv4/SOCKSv4.5/SOCKSv5) и ряд особенностей.
Подробнее описано тут — https://3proxy.ru/howtor.asp

Например SOCKSv4 не поддерживает IPv6 на уровне протокола, в SOCKSv5 есть поддержка IPv6 с помощью отдельного вида запроса, который должен быть реализован в клиентском приложении или соксификаторе. Авторизации по паролю поддерживаются в SOCKS так же как и через HTTP-прокси. SOCKSv5 имеет поддержку UDP.

Читать еще:  Лучшие фильтры для айфона. Лучшие приложения для обработки Фото и Видео на iPhone. Instant Blend: мультиэкспозиция как одна из функций

В шаге-4 в конфиге /etc/3proxy/3proxy.cfg
вместо последней строчки, а можно одновременную работы с HTTP-прокси настроить — тогда просто добавить в конец строку:

Параметр (-p1080) это номер порта. Можно другой указать, но этот стандартный.

В шаге-6 при использовании Uncomplicated Firewall (UFW):

Генерация идей

Таким образом, вселенную Facebook можно представить состоящей из неких суперструн — супертем, вокруг которых организуются посты от людей со схожим ментальным классом. Каждый пост развивает и дополняет тему (сегодняшний довольно примитивный способ организации тем, который позволяет видеть супертемы — это хэштэги).

Усиливающийся тренд в интернете — работа над задачами силами множества людей. Самый близкий успешный пример краудсорсинга — Википедия. В социальных сетях группа своими действиями может сделать сообщение заметнее, чем один человек, а внутри группы каждый может внести свой вклад в развитие темы. Интернет дает прекрасную возможность для краудсорсинга, но инструменты пока достаточно слабы.

В последнее время к Facebook было представлено достаточно нареканий. Внесу свои пять копеек в это коллективное поношение. Если выделить те свойства социальных сетей, которые мешают им стать полноценными инструментами для коллективной разработки тем, то это будет три архитектурно-онтологических принципа построения системы.

1) Слабые инструменты фильтрации, систематизации и поиска информации. Facebook — это базарная «площадь», посты в которой появляются и уходят вникуда.

2) Механизм перепостов. Перепосты прекрасно подходят для распространения информации и дают возможность распространяться вирусам. Но при перепосте не создается ничего нового — это нулевой творческий акт, ready-made.

3) Развитие сообществ, а не тем. Facebook позволяет развивать сообщества, посвященные темам — таким образом, тема намертво связывается с сообществом и его руководителями. В этом механизме есть минусы: люди, которые не являются членами группы и не вносят свой вклад в развитие темы.

Учет этих архитектурных ошибок дало бы возможность создания более удобной социальной сети, предназначенной для совместного развития темы и коллективного творчества.

Люди в такой сети организуются по принципу схожего ментального класса вокруг общих тем. Каждый человек создает сreative point — точку на «стволе», из которой вырастает ветвь — развитие темы. Вместо кнопки Share может появиться кнопка Modify — пользователь может перепостить мысль, только изменив ее — переосмыслив, скомбинировав с другой мыслью, добавив в нее новое. Темы постоянно развиваются за счет личного вклада каждого из участников процесса.

Прототип этой сети и дополнительные подробности такого сервиса вы можете увидеть ниже (нажмите, чтобы увеличить). В комментарии к посту призываю всех желающих поделиться своим мнением.

Другие тексты Дмитрия Соловьева мы размещали в проекте новая среда жизни

О программах, не вошедших в топ

В подборку не вошли некоторые программы, которые в основном были заброшены. Например Vectorian Giotto, которая является бесплатной версией Macromedia Flash или легендарный Autodesk Animator, развивавшийся в 1989-1995 годах (сейчас его можно скачать на Winworld или на Old-DOS.ru). Здесь не было Adobe Character Animator, который был создан для анимации персонажа в реальном времени и требует веб-камеру для правильной работы (им кстати пользуется MyGap для анимации главного героя). В топ также не попала такая программа как Cacani из-за её малой распространённости (и отсутствии нормально кряка конечно же, из-за чего её в 90% случае вы не будете устанавливать). Сюда не попали и те приложения, что имели очень непривычный и сложный интерфейс, либо же к которым нет никаких туториалов, а также программы для 3D-анимации (т. к. это уже отдельный разговор).

Платформы: Windows, Linux, macOS, Android, iOS

Самый знаменитый «линуксовый» редактор офисных документов, разрабатываемый добровольцами из Open Document Foundation и предустановленный в популярном дистрибутиве Ubuntu, на самом деле, доступен практически для всех платформ — как десктопных, так и мобильных. А вот веб-версии, как и возможностей совместного редактирования, у него нет — это продукт для индивидуальной работы с документами.

Зато он предоставляет аналоги почти всех популярных элементов пакета MS Office: Writer (Word), Calc (Excel), Impress (PowerPoint), Base (Access), Draw (Visio), а также редактор формул Libre Office Math, эквивалента которому в MS Office нет. По умолчанию LibreOffice работает со свободными форматами OpenDocument, но может читать документы MS Office и экспортировать ваши работы в них.

Что может не понравиться современному пользователю, так это старомодный интерфейс редактора, воскрешающий в памяти Office 2003. Отсутствие возможностей совместной работы также не слишком радует в 2019-то году. А самое грустное — мобильные приложения LibreOffice, которые способны исключительно на просмотр файлов: редактировать ими нельзя. Это можно списать на разработку на добровольных началах, но выдержать конкуренцию с такими возможностями уже сложно.

Что выяснилось в процессе использования

Я слышал о Notion давно. Дважды устанавливал приложение для Mac, пытался изучить его и начать пользоваться, но обе попытки не увенчались особым успехом.

Мне в основном приходится работать с текстами, поэтому я рассчитывал вести в Notion заметки и писать черновики статей. С короткими записями, как и со списками дел, получилось легко, а вот с текстами не задалось.

Мне очень не хватало полноценной поддержки Markdown и ещё больше — настроек отображения шрифтов: в редакторе лишь три гарнитуры, два размера шрифтов и полей.

Считаю, что без переноса всех процессов в Notion пользоваться им нет смысла, поскольку ломается вся стройная концепция единого пространства. Поэтому продолжаю пользоваться Bear, в котором пишу тексты, храню заметки и веду несложные списки.

Но при этом внимательно слежу за Notion и жду, пока появится больше настроек. Всё-таки приложение очень мощное и перспективное, а идея универсального инструмента для меня заманчива.

У нашего шеф-редактора всё сложилось удачнее. Он с удовольствием пользуется Notion и вот что говорит по этому поводу.

Чтобы Notion начал работать, надо потратить несколько часов на его настройку: изучить шаблоны, разобраться с механикой, посмотреть видосов на YouTube, придумать сценарии использования. Это долго и местами нудно.

Но! Как только ты подстроишь Notion под себя, начнётся сказка: другие приложения для заметок и задач станут не нужны. Таблицы, чек-листы, форматирование текста блоками — здесь столько скрытых фич, что крышу сносит, когда находишь что-то новое.

Место у меня закончилось через месяц, но благодаря реферальной программе и паре постов у меня есть два года подписки.

Gogs: легковесный git-сервис

В числе самых обсуждаемых последних новостей в сообществе разработчиков были новые тарифы GitHub (см., например, здесь).

Конечно, у новых тарифов есть свои преимущества, но с нынешним курсом доллара их вряд ли можно назвать выгодными для российских пользователей.

Некоторые прибегают к альтернативному решению и разворачивают GitLab (или другой git-сервис) на собственном или арендованном сервере.

Но и у этого решения есть свои подводные камни: GitLab очень требователен к системным ресурсам. Для частных лиц гораздо проще платить 7 долларов в месяц за GitHub, чем арендовать сервер надлежащей конфигурации.

Из сказанного, однако, не следует, что у GitHub на сегодняшний день альтернативы нет. Об одном весьма интересном и перспективном решении мы хотели бы рассказать в этой статье. Знакомьтесь: Gogs. Этот инструмент будет интересен как для индивидуальных разработчиков, так и для небольших компаний.

Общая информация

Gogs — продукт китайских разработчиков. На первый взгляд он почти ничем не отличается от GitHub или BitBucket — это даже по дизайну заметно.
Но при всех внешних сходствах у него есть одно выгодное отличие от существующих аналогов: легковесность.

Gogs написан на Go (собственно, это название представляет собой сокращение от Go Git Service). Из этого факта вытекают серьёзные преимущества: низкие требования к системным ресурсам, минимум зависимостей, простота установки и настройки.

В числе важнейших характеристик Gogs также следует назвать:

  • поддержку протоколов HTTP(s) и SSH;
  • поддержку SMTP и LDAP;
  • возможность создания как приватных, так и публичных репозиториев;
  • интеграцию с социальными сетями (пока что поддерживаются GitHub, Google+, а также китайские сервисы QQ и Weibo);
  • возможность работы в связке с сервисами непрерывной интеграции и DevOps-сервисами (подробный список).

Продвижение Gogs на международном рынке началось в конце 2014 — начале 2015 года. Весной 2015 года появились первые статьи о нём на западных сайтах, что также способствовало популяризации продукта. Но говорить о полноценной конкуренции с GitHub и GitLab было ещё рано: у Gogs даже поддержки пулл-реквестов не было, не говоря уже о других важных функциях.

В конце 2015 года после более чем полугодового перерыва вышла в свет новая версия продукта. В ней было реализовано множество нововведений, самыми важными из которых являются, конечно же, поддержка пулл-реквестов и возможность создания вики-страниц для проектов.
Дизайн Gogs также был заметно улучшен, а интерфейс перевели на 18 языков, включая русский.

Читать еще:  Устройство не является съёмным и не может быть извлечено

Gogs, GitHub и GitLab

Сравним Gogs с другими инструментами аналогичного плана. Результаты сравнения для наглядности представим в виде таблицы:

ХарактеристикаGogsGitHubGitLab
Баг-трекер+++
Поддержка аккаунтов организаций+++
Wiki+++
Ревью кода++
Сниппеты кода++
Веб-хуки+++
Гит-хуки+только в enterprise-версиитолько в enterprise-версии
Поддержка LDAP+++
Синхронизация групп LDAPтолько в enterprise-версиитолько в enterprise-версии

Установка Gogs

Рассмотрим процедуру установки и первичной настройки на примере OC Ubuntu 16.04. В качестве СУБД возьмем привычный MySQL.

После этого создайте файл gogs.sql:

Добавьте в него следующие строки:

Сохраните внесённые изменения и выполните:

Чтобы уcтановить gogs из исходников, вам понадобятся также системы контроля версий git и mercurial:

Далее вам нужно будет установить компилятор Go. Откройте файл /.bashrc и добавьте в него следующие строки:

Сохраните изменения и выполните:

После этого установить компилятор Go:

Все необходимые зависимости установлены. Можно устанавливать Gogs:

По завершении установки нужно настроить запуск Gogs как службы. Для этого вам потребуется просто добавить в /etc/system/systemd файл gogs.service (шаблон см. здесь) и выполнить после этого следующие команды:.

Если всё сделано правильно, то по завершении установки страница настройки Gogs будет доступна по адресу http:// [IP-адрес сервера]:3000. Вся дальнейшая настройка осуществляется через графический интерфейс; там всё довольно просто и интуитивно понятно. Если вы планируете привязать к серверу с Gogs домен, вам потребуется также установить Nginx и настроить его в качестве обратного прокси (подробнее в официальной документации).

В процедуре установки Gogs ничего сложного нет. Но если вы являетесь пользователем нашего сервиса Vscale (кстати, отличный повод им стать), то всё можно сделать ещё проще: совсем недавно мы добавили в панель управления соответствующий образ. Один клик ― и виртуальная машина с уже установленным и настроенным Gogs создана и готова к использованию:

Как только сервер будет создан, откройте в браузере страницу http://[IP-адрес сервера]. Ничего настраивать дополнительно вам не потребуется: всё уже прописано в шаблоне и готово к работе.
Войдите в Gogs с помощью логина и пароля, полученных при установке.

Gogs в работе

Работать с Gogs просто. Если у вас есть опыт работы с GitHub, то вы без труда во всём разберётесь. Для начинающих пользователей в панели управления приводятся подробные шпаргалки.
Приведём элементраный пример. Создадим через графический интерфейс тестовый репозиторий.
После этого клонируем его на локальную машину:

Внесём небольшие изменения в файл README.md:

Закоммитим внесённые изменения:

Вам будет предложено ввести логин и пароль пользователя Gogs. После этого коммит будет добавлен в репозиторий. В панели управления всё это выглядит так:

Заключение

Мы попробовали поработать с Gogs – и остались вполне довольны. У продукта китайских разработчиков перспективы есть, и неплохие. За последний год (а в первый раз мы познакомились с Gogs в начале 2015 года) была проделана огромная работа по его усовершенствованию, и мы надеемся, что она будет продолжена в будущем.

Gogs уже сейчас является вполне достойной альтернативой GitHub и GitLab.В плане потребления системных ресурсов он гораздо экономичнее, чем любое из аналогичных решений. Как утверждают разработчики в своём блоге, его можно установить даже на RaspberryPi. Не знаем, как насчёт RaspberryPi, но на виртуальном сервере самой простой конфигурации в Vscale Gogs работает вполне стабильно на небольшом количестве репозиториев. Приглашаем всех попробовать и оценить. Если у вас уже есть опыт работы с Gogs — будем рады, если вы поделитесь им в комментариях.

Специально для тех, кто хочет получить готовый настроенный git-сервис, но при этом предпочитает более традиционные и уже зарекомендовавшие себя решения, мы добавили образ с GitLab. Сразу же отметим, что для самых бюджетных и популярных тарифов он недоступен: GitLab потребляет слишком много системных ресурсов, и серверы “младших” конфигураций его просто-напросто не потянут.

Пользуясь случаем, мы хотели бы обсудить ещё одну важную тему. Сегодня некоторые VPS-провайдеры предлагают образы с предустановленным ПО. У нас в Vscale, например, уже есть: Ajenti, VestaCP, WordPress, Docker, GitLab и Gogs. Этот список мы планируем значительно расширить.
В связи с этим — вопрос ко всем пользователям VPS: какие образы с предустановленным ПО вам нужны? Что ещё, помимо стандартных CMS и панелей управления хостингом, вы бы хотели видеть у вашего провайдера? Если в списке чего-то нет, просьба делиться в комментариях.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Сравниваем CMS, чистый код и фреймворк

Если у программиста стоит задача создать сайт, ему необходимо сразу же определить дальнейшую стратегию работы. Есть три пути разработки, каждый программист может выбрать тот, который больше всего подходит под его умения.

    Можно написать требуемый исходный код с нуля. Главным преимуществом этого варианта, явл яется его вариативность — практически никаких ограничений, можно реализовать любой задуманный функционал, потребуются лишь определенные умения. Главным минусом можно назвать трудоемкость процесса, временные затраты. Также придется приложить очень много усилий для тщательного тестирования полученного продукта — придется найти все его изъяны, чтобы создать идеальный веб-проект.

Использование фреймворков. Существуют определенные ограничения, если проводить параллели с предыдущим способом. Существует основа, в которую нужно добавить определенное количество требуемых компонентов. Данный вариант является рентабельным только для тех, кто хоть немного разбирается в программировании — без определенного количества знаний выполнить поставленную задачу правильно практически невозможно. Для людей, которые не могут воспользоваться представленными способами, есть альтернативный вариант.

Использование готовой CMS. Данный вариант является идеальным для людей, которые мало понимают в сегменте веб-разработки. Вы сможете оперативно создать сайт, соответствующий вашим требованиям. Есть возможность вносить необходимые коррективы через административную панель. Но данный подход не пользуется особой популярностью — главным минусом является огромное количество ограничений.

Исходя из сравнительных характеристик, можно понять, что именно фреймворк — «золотая середина» между написанием сложного кода и применением ограниченной по функционалу CMS. Вы получаете уже готовый каркас для своего проекта, при этом не теряя гибкости в плане функционала. Фреймворки разделяют по принадлежности к языку программирования, к которому они относятся.

Рассмотрим фреймворки, их типы, особенности, чтобы помочь каждому, кто захочет воспользоваться данным способом для создания сайта.

HTML/CSS-фреймворки: их главные особенности

Bootstrap — этот фреймворк является невероятно популярным и востребованным, его представили еще в начале 2011 года. Адаптивность (адаптивная верстка) — его главное преимущество. Bootstrap позволяет создавать проекты с невероятно отзывчивым, стильным дизайном — проект будет автоматически подстраиваться, учитывая размер экрана компьютера или мобильного устройства пользователя, просматривающего сайт. К преимуществам относится: большое количество стилей, шаблонов, постраничный дизайн — это существенно облегчает создание сайта.

Bootstrap стал столь популярным из-за огромного количества достоинств, в нем практически отсутствуют недостатки. Это не только HTML/CSS-фреймворк, в Bootstrap также включены плагины и готовые стили JS/Jquery. Знание Bootstrap часто является одним из обязательных требований работодателей.
Официальная страница getbootstrap.com

Semantic UI — используется для создания переносимых интерфейсов. Данный фреймворк можно назвать достаточно молодым, однако стоит отметить его постоянное развитие. В нем можно найти огромное количество кнопок и других элементов, необходимых для работы — изображения, иконки, надписи.
Официальная страница semantic-ui.com

Foundation — данный фреймворк является одним из популярных в сегменте front-end-фреймворков. Последние версии отличаются улучшенным функционалом для современных мобильных устройств. Благодаря семантическому подходу, есть возможность использования SCSS, написания более чистого кода в HTML. Данный фреймворк является идеальным для ситуации, когда нужно быстрое прототипирование.
Официальная страница foundation.zurb.com

Pure by Yahoo! — в данном фреймворке есть несколько небольших CSS-модулей, которые хорошо подойдут для любого современного проекта. Название фреймворка, характеризует его основную особенность — ничего лишнего, только необходимый, ничем не утяжеленный программный каркас, который прекрасно подойдет для создания сайта.
Официальная страница purecss.io

Uikit — фреймворк отличается модульной, легкой структурой. Есть несколько особенностей, которые позволяют ему выделяться на фоне современных фреймворков. Это markdown — возможность предварительно просмотреть страницу сайта в режиме реального времени. Также можно отметить синтаксическую подсветку для HTML.
Официальная страница getuikit.com

Когда вам не нужен Rails?

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

Ну вот и всё. В заключение я добавлю, что получаю большое удовольствие, используя Rails и Ruby. Это очень удобные инструменты, мягкие и податливые, как пластилин. В умелых руках они помогают создавать волшебные вещи.

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector