В этой статье я опишу настройку автоматического развёртывания веб-приложения на стеке Django + uWSGI + PostgreSQL + Nginx из репозитория на сервисе GitLab.com. Изложенное также применимо к кастомной инсталляции GitLab. Предполагается, что читатель располагает опытом в создании веб-приложений на Django, а так же опытом администрирования Linux-систем.
Рубрика «docker он везде»
Автоматическое развёртывание Django из GitLab
2016-11-25 в 8:44, admin, рубрики: continuous integration, django, docker, docker он везде, fabric, Git, gitlab, Разработка веб-сайтовOpenShift + Jenkins + Bitbucket, непрерывная интеграция и публикация из коробки
2016-10-20 в 2:55, admin, рубрики: bitbucket, docker он везде, Git, Jenkins, openshift, php, Разработка веб-сайтов, системы сборки, Системы управления версиями, Тестирование IT-систем
В этой статье я покажу, как быстро развернуть среду для сборки, тестирования и публикации приложений используя платформу OpenShift на примере PHP проекта. Использовать буду OpenShift online, но всё это же можно развернуть и на собственных серверах или в VirtualBox (есть готовая сборка). Git-сервером для хранения и версионирования кода будет Bitbucket.
Читать полностью »
Разрабатываем систему real-time fulltext-поиска по error-логам на основе ClickHouse от Яндекса
2016-07-02 в 17:03, admin, рубрики: clickhouse, docker, docker он везде, open source, sphinx, полнотекстовый поиск, Программирование, Разработка под Linux, метки: clickhouse, полнотекстовый поискВ этой статье я расскажу о том, как разработать систему для индексирования и полнотекстового поиска error-логов (или любых других логов) на основе СУБД от Яндекса под названием ClickHouse. Про саму базу Яндекс писал на Хабре сначала когда база была закрытой, а потом когда они её заопенсорсили. База данных в первую очередь предназначена для аналитики и для реализации сервиса Яндекс.Метрика, но может на самом использоваться для чего угодно, если вам подходит загружать данные пачками, удалять их тоже огромными пачками и никогда не обновлять отдельные строки.
Что мы будем делать
Мы будем реализовывать систему для индексирования и поиска по error-логам. При этом, считается, что сами логи вы уже сумели доставить на центральный сервер (или несколько серверов) и уже засунули сами тексты сообщений в базу, то есть у вас уже есть таблица в какой-нибудь базе данных примерно следующего вида:
CREATE TABLE Messages (
message_id BIGINT PRIMARY KEY AUTO_INCREMENT,
created_ts DATETIME,
message_text BLOB
)
Мы научимся быстро отдавать результаты поиска по такому логу (то есть, всегда отсортированные по времени) и индексировать его в режиме реального времени.