2019
Сборка и деплой однотипных микросервисов с werf и GitLab CI

Раннее мы публиковали статью «Сборка проектов с GitLab CI: один .gitlab-ci.yml для сотни приложений», а теперь расскажем о решении схожей задачи сегодня. Новый материал — о том, как можно построить CI/CD-процессы для большого количества однотипных приложений с появлением include в .gitlab-ci.yml и приходом werf на замену dapp.

Прочитать на Хабре
Использование werf для выката комплексных Helm-чартов

Статья посвящена новым командам для работы с зависимостями чарта и чарт-репозиториями.

Прочитать на Хабре
Поддержка monorepo и multirepo в werf и при чём здесь Docker Registry
Прочитать на Хабре
Собирать Docker-образы в werf теперь можно и по обычному Dockerfile

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

Прочитать на Хабре
werf — наш инструмент для CI/CD в Kubernetes (обзор и видео доклада)

27 мая в главном зале конференции DevOpsConf 2019, проходящей в рамках фестиваля РИТ++ 2019, в рамках секции «Непрерывная поставка», прозвучал доклад «werf — наш инструмент для CI/CD в Kubernetes». В нём рассказывается о тех проблемах и вызовах, с которыми сталкивается каждый при деплое в Kubernetes, а также о нюансах, которые могут быть заметны не сразу. Разбирая возможные пути решения, мы показываем, как это реализовано в Open Source-инструменте werf.

Прочитать на Хабре
Как победить дракона: переписываем вашу программу на Golang

Так случилось, что ваша программа написана на скриптовом языке — например, на Ruby — и встала необходимость переписать ее на Golang.

Прочитать на Хабре
2018
Сборка проектов с werf (dapp). Часть 2: JavaScript (frontend)

Этот материал продолжает цикл о сборке Docker-образов для приложений на различных языках программирования с помощью утилиты werf (dapp). Поговорим о приложениях на JavaScript. Для начала это будет frontend-приложение, а в следующей части планируется рассказать о сборке backend'а и запуске всего в Kubernetes.

В качестве иллюстрации будут использованы приложения nodejs-pool и poolui. Да-да, подготовим к запуску в Kubernetes свой майнинг-пул с блокчейном и выплатами!

Прочитать на Хабре
Мониторинг и Kubernetes (Дмитрий Столяров, Флант, RootConf 2018)

Доклад Дмитрия Столярова, технического директора компании «Флант», на конференции RootConf 2018 в рамках фестиваля РИТ++ (28 мая 2018). Рассказывается об опыте настройки мониторинга с Prometheus, который был получен в результате эксплуатации десятков проектов на Kubernetes в production.

Прочитать на Хабре Посмотреть на YouTube
Возможности werf (dapp), которые делают жизнь проще

В статье представлен (и продемонстрирован в коротких видеороликах) инструментарий, облегчающий разработку и отладку конфигураций с werf (dapp) — Open Source-утилитой, которую мы ежедневно используем при построении и сопровождении процессов CI/CD.

Прочитать на Хабре
Linux-дистрибутив from scratch для сборки Docker-образов — наш опыт с dappdeps

Сборка образов для Docker на основе базового образа, как правило, предполагает вызов команд в окружении этого базового образа. Например — вызов команды apt-get, которая есть в базовом образе, для установки новых пакетов.

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

Проблема известная: одним из путей её решения может быть сборка вспомогательного образа и перенос файлов из вспомогательного образа в результирующий. Для этого появились Docker multi-stage builds или образы-артефакты в dapp. И данный подход идеально решает проблему подобную переносу результатов компиляции исходных кодов в итоговый образ. Однако он не решает все возможные проблемы…

Прочитать на Хабре
Дождались: поддержка YAML и Ansible (без коров) в werf (dapp)

В начале этого года мы посчитали, что наша Open Source-утилита для сопровождения процессов CI/CD — werf (dapp) версии 0.25 — обладает достаточным набором функций и была начата работа над нововведениями. В версии 0.26 появился синтаксис YAML, а Ruby DSL был объявлен классическим (далее перестанет поддерживаться вовсе). В следующей версии, 0.27, основным нововведением можно считать появление сборщика с Ansible. Пришло время рассказать об этих новинках подробнее.

Прочитать на Хабре
Сборка проектов с werf (dapp). Часть 1: Java

Эта статья — начало цикла о сборке werf'ом (dapp) приложений на различных языках, платформах, технологических стеках. Предыдущие статьи про dapp были больше обзорными, описывали возможности dapp. Теперь же пора поговорить более предметно и поделиться конкретным опытом работы с проектами. В связи с недавним релизом dapp 0.26.2 я заодно покажу, как описывать сборку в YAML-файле.

Описывать сборку буду на примере приложения из репозитория dockersamples — atsea-sample-shop-app. Это прототип небольшого магазина, построенный на React (фронт) и Java Spring Boot (бэкенд). В качестве БД используется PostgreSQL. Для большей похожести на рабочий проект добавлены реверсивный прокси на nginx и шлюз платежей в виде простого скрипта.

Прочитать на Хабре
2017
Сборка и дeплой приложений в Kubernetes с помощью werf (dapp) и GitLab CI

Чем werf (dapp) помогает в процессах CI/CD?

Прочитать на Хабре
Лучшие практики CI/CD с Kubernetes и GitLab (Дмитрий Столяров, Флант, HighLoad++ 2017)

Доклад Дмитрия Столярова, технического директора компании «Флант», на конференции HighLoad++ 2017 (7 ноября 2017). Рассказывается о выстраивании процессов непрерывной интеграции и доставки (CI/CD) на базе GitLab CI и специфики их интеграции с инфраструктурой, управляемой Kubernetes.

Прочитать на Хабре Посмотреть на YouTube
Практика с werf (dapp). Часть 2. Деплой Docker-образов в Kubernetes с помощью Helm

Демонстрация работы werf (dapp) с кластером Kubernetes.

Прочитать на Хабре
Практика с werf (dapp). Часть 1: Сборка простых приложений

Эта статья — ознакомительное руководство по сборке Docker-образов приложений с помощью нашей Open Source-утилиты werf (dapp) (подробнее о ней читайте в анонсе). На примере двух простых приложений (с одним образом) рассмотрим, как могут быть задействованы некоторые из основных возможностей dapp и какой результат они дают.

Прочитать на Хабре
Официально представляем werf (dapp) — DevOps-утилиту для сопровождения CI/CD

dapp — написанный на Ruby инструмент, созданный в компании «Флант» как Open Source-проект для реализации и сопровождения процессов CI/CD. Что он позволяет?

Прочитать на Хабре
Наш опыт с Kubernetes в небольших проектах (Флант, RootConf 2017)

Доклад Дмитрия Столярова, технического директора компании «Флант», на конференции RootConf, проходившей в рамках фестиваля РИТ++ 2017 (6 июня 2017 г.). Посвящён устройству и основным возможностями Kubernetes и практике использования этой контейнерной системы в небольших проектах.

Прочитать на Хабре Посмотреть на YouTube
Собираем Docker-образы для CI/CD быстро и удобно вместе с werf (dapp) (обзор и видео)

Доклад Дмитрия Столярова, технического директора компании «Флант», с конференции Highload++ 2016 (8 ноября 2016 г.). Посвящен сборке Docker-образов в контексте CI/CD (Continuous Integration, Continuous Delivery) и обзору основных возможностей Open Source-утилиты werf (dapp).

Прочитать на Хабре Посмотреть на YouTube
Практики Continuous Delivery с Docker (обзор и видео)

Доклад Дмитрия Столярова, технического директора компании «Флант» с конференции RootConf 2016 (31 мая 2016 г.). В нём были обобщены и систематизированы лучшие практики построения процесса Continuous Delivery (CD) с использованием Docker и других Open Source-продуктов.

Прочитать на Хабре Посмотреть на YouTube