Рубрика «docker» - 42

Целью данной статьи является демонстрация возможности BDD-тестирования веб-сервиса с использованием Docker и JBehave.
Читать полностью »

Деплой Ruby on Rails приложения при помощи Docker и Mina - 1

Введение

Данное руководство в первую очередь предназначено для новичков, которые хотят научиться азам деплоя и ознакомиться в общих чертах с алгоритмом работы над удаленной unix системой локально. Итак, что же такое Mina? Это инструмент для деплоя и автоматизации выполнения операций на удаленном сервере.

Преимущество этого решения, в первую очередь, заключается в быстроте выполнения. Mina работает очень быстро, поскольку деплоит bash скрипт, который генерируется на удаленном сервере из вашего deploy.rb файла и в последствии выполняется.

Capistrano, к примеру, выполняет каждую команду отдельно, в своей ssh сессии, и поэтому уступает по скорости в разы, mina выполняет все в одном bash скрипте, который требует только одну сессию.
Читать полностью »

Добрый день, коллеги!

На YiiConf пришло много заявок — 12 докладов и 2 мастер-класса. Впервые на одной конференции будут выступать сразу четыре разработчика из Yii core team.

Запущено голосование за доклады YiiConf - 1

Читать полностью »

В минувший понедельник стало известно о доступности видео с конференции DockerCon 2017, прошедшей во второй половине апреля. В одном из прозвучавших там докладов представитель компании Alibaba Cloud (или Aliyun) — подразделения Alibaba Group, специализирующегося на облачных вычислениях, IaaS, PaaS, SaaS и Big Data — рассказал о статистике и историях успеха Docker в Китае.

В этой статье, продолжающей нашу недавнюю публикацию о глобальной статистике по внедрению Docker, собраны наиболее интересные факты из доклада Alibaba Group, основанные на опросе 1000+ пользователей её публичного облака в апреле этого года и известных случаях применения Docker. Но начнём с предыстории «появления» Docker в мире китайских информационных технологий…

Docker в Китае: статистика использования и истории успеха - 1Читать полностью »

Про использование Docker и Docker-compose последнее время написано очень много, например рекомендую недавнюю статью на Хабре, если вы до сих пор не прониклись. Это действительно очень удобно, а в связке в ansible особенно. И я его использую везде. От разработки, до автоматического интеграционного тестирования на CI. Про использование в тестировании, тоже писали. Это здорово и удобно. Однако, для локальной разработки, для траблешутинга данных "как в продакшене" или тестирование производительности, на "объёмах близких в продакшену", хочется иметь под рукой образ, содержащий базу, "как в продакшене"!

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

./gradlew dockerRun

и приложение поднялось бы сразу со всеми необходимыми связанными контейнерами? А главное чтобы в нём уже были бы данные для большинства кейсов разработки и багфиксинга, стандартные пользователи и большинство работающих сервисов, над которыми сразу можно было бы приступить работать, не тратя времени на экспорт-импорт каких-то там образов или демоданных!

Как приятный бонус, ну разве не здорово иметь базу данных в несколько гигабайт и возможность откатиться к её исходному (или любому другому коммиту) состоянию в течении пары секунд?

Разумеется мы поговорим о написании Dockerfile для такого образа с данными, и некоторых подводных камнях этого процесса.

Читать полностью »

Контейнеры Docker немного увеличивают энергопотребление сервера - 1
Энергопотребление компьютера с ОС Linux и сервисом Docker без всякой нагрузки (без загрузки контейнера)

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

Поскольку в контейнерах не работают одновременно два ядра операционной системы, как в виртуальных машинах, то казалось бы, что энергопотребление у них должно быть такое же, как при работе обычной операционной системы. Но это не так. Cравнительное тестирование Linux и Docker показало, что энергопотребление контейнеров Docker чуть выше.
Читать полностью »

All-In-One: Proxmox + OpenMediaVault или ещё одна идея для домашнего NAS - 1

Астрологи объявили месяц статей о домашних NAS на хабре, так что поделюсь и своей историей успеха...

Не так давно я попробовал новый FreeNAS Coral. Понравилось мне в нем если не все, то очень многое: это и новый гипервизор bhyve, и повсеместное использование 9P для проброса файловой системы на гостя, а так же идея с docker и многое другое.
Кроме того я ещё больше влюбился в ZFS со всеми её плюшками, такими как дедупликация и сжатие на лету.

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

В статье так же будет немного рассказано про Docker и автоматический прокси с автоматическим получением сертификатов Letsencrypt.Читать полностью »

image

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

В версии GitLab 9.1 появились канареечные развертывания. Они позволяют вам развертывать новый код на небольшой части вашей инфраструктуры. Если обнаружатся проблемы, они успеют затронуть лишь малую часть пользователей, и вы сможете легко откатиться к предыдущей версии. Это быстрая обратная связь от боевого окружения.

С новой фичей Service Desk ваши пользователи могут отправлять свои вопросы и сообщать о проблемах на специальный адрес электронной почты, отдельный для каждого проекта. По письму от пользователя Service Desk заводит конфиденциальную задачу (issue) в вашем проекте. Когда кто-либо комментирует задачу, пользователь получает этот комментарий в ответном письме.
Это — встроенный непосредственно в GitLab канал обратной связи от пользователей.

Читать полностью »

image

Большинство из нас уже давно научилось готовить Docker и используют его на локальных машинах, на тестовых стендах и на боевых серверах. Docker, который недавно превратился в Moby, прочно вошел в процессы доставки кода до пользователя. Но best practice работы с контейнерной виртуализацией и, в частности, с Docker вырабатываются до сих пор.

Как это было

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

Читать полностью »

Мониторинг Docker Swarm с помощью cAdvisor, InfluxDB и Grafana - 1

Чтобы отслеживать состояние работающих приложений, необходимо проводить их постоянный мониторинг. А если приложения выполняются в таком хорошо масштабируемом окружении, как Docker Swarm, то потребуется также и хорошо масштабируемый инструмент мониторинга. В этой статье говорится о настройке именно такого инструмента.

В процессе работы мы установим агенты cAdvisor на каждой ноде для сбора метрик хоста и контейнеров. Метрики будут сохраняться в InfluxDB. Для построения графиков на основе этих метрик воспользуемся Grafana. Эти инструменты распространяются с открытым исходным кодом и могут быть развернуты в виде контейнеров.

Для построения кластера мы будем использовать Docker Swarm Mode и развернем необходимые сервисы в виде стека. Это позволит организовать динамическую систему мониторинга, которая способна автоматически начинать мониторинг новых нод по мере их добавления в рой (swarm). Файлы проекта можно найти здесь.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js