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

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

К вашему сведению! В этой статье мы рассматривается само явление докеровских контейнеров, а не составляем список микросервисов, которые гнездятся внутри. Этим мы займемся в следующей серии, во имя справедливости!

Что мы имеем сегодня

  • Зоопарк дубовых VPS-хостингов.
  • Дорогие IaaS и PaaS с гарантированным vendor lock in.
  • Уникальные сервера-снежинки.
  • Ворох устаревших зависимостей на неподдерживаемой операционке.
  • Скрытые связи частей приложения.
  • Незаменимый админ полубог на скейтборде.
  • Радуга окружений: development, testing, integration, staging, production.
  • Генерация конфигов для системы управления конфигами.
  • Feature flagging.
    Читать полностью »

image
Разработчики Apache mesos заявляют, что mesos научился делать overprovisioning начиная с версии 0.23.0, вышедшей в сентябре прошлого года. Для этого ввели понятие отзываемых (revocable) ресурсов, и если приложение выполняется на отзываемых ресурсах — его всегда можно попросить освободить ресурсы частично (throttle) или полностью (kill). Определить, на каких ресурсах будет выполняться задача можно на этапе запуска, пометив некоторые (или все) запрошенные задачей ресурсы как revocable.

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

image

Пришло время разложить информацию о контейнерах «по полочкам» в голове в статье и формализовать подход к построению образов Docker. Еще при первом знакомстве с Docker все запущенные контейнеры напоминали костыли и велосипеды избыточные наборы файлов, библиотек, поверх которых запускались процессы. Что бы такого не было, хотелось объединить дублирующие слои в один, но в то же время предоставить каждому исполняемому файлу свой контейнер. Так постепенно начал формироваться свой подход к построению образов. Но чем же плохи «костыли и велосипеды»? Ответ один – они могут появиться в конечном продукте.
Читать полностью »

Мнение инженера: Почему не нужно всегда и везде использовать Docker - 1

В нашем блоге мы много пишем о развитии облачного сервиса 1cloud и перспективных технологиях, вроде Docker. Контейнеры за последний год стали настоящим хитом, однако такая популярность имеет и обратную сторону. Инженер Ник Барретт (Nick Barret) в своем блоге задался вопросом, почему сейчас контейнеры Docker начинают использовать даже для решения не подходщяих для этого инструмента задач?

Баррет говорит, что обожает Docker. По собственному признанию инженера, он потратил много времени, чтобы освоить Docker и Kubernetes. В сочетании со stateless-контейнерами они обеспечивают фантастическую масштабируемость, сервисное раскрытие и почти мгновенное развертывание приложений (кроме создания первичного образа).

Но сегодня контейнеры Docker используют для всего подряд, и, по словам Барретта, это приводит его в замешательство.Читать полностью »

Docker: Окружение для тестирования - 1

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

Одна из проблем, с которыми приходится столкиваться, занимаясь настройкой окружения для разработчиков, с использованием Docker и Docker-compose, это вопрос о том, как сводить вместе несколько различных проектов. При условии, что все проекты, конечно же, имеют docker-compose.yml файл.

Docker compose и объединение проектов с помощью mixer-a - 1

Причин, по которым становится необходимо делать это, может быть несколько:

  • Разработка низко связанных компонентов огромной системы. Где каждый проект, по сути, может являться отдельным самостоятельным приложением
  • Подключение отдельных компонентов для тестирования. Вынесение mock-сервисов и тестов в отдельные контейнеры со своей логикой линковки и взаимодействия
  • Внешнии, по отношению к проекту, системы, которые тем не менее 'живут' в docker среде

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

350+ полезных ресурсов, книг и инструментов для работы с Docker - 1

В нашем блоге мы пишем о развитии облачного сервиса 1cloud, но и о перспективных технологиях. Одной из наиболее активно обсуждаемых тем ушедшего года стала «революция контейнеров», одним из главных действующих лиц которой, безусловно, является Docker. Поэтому сегодня мы представляем вашему вниманию перевод подборки из более чем 350 полезных ресурсов, книг и инструментов для работы с этой технологией, которые собраны в этом репозитории на GitHub.Читать полностью »

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

Окружение разработки: Redmine + Git + ownCloud - 1

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

  • Файлы проекта хранятся в Git репозитории;
  • Репозиторий содержит настройки, исходники и другие файлы проекта, наличие которых удобно и допустимо в коллективном репозитории;
  • В корне расположена директория cloud, исключенная в .gitignore, в которую через WebDAV монтируется ownCloud папка, для остальных файлов;
  • Содержимое Git репозитория отслеживается в системе управления проектами Redmine.

План развертывания системы включает настройку следующих сервисов:

  1. OpenLDAP — единая учётная запись для всех сервисов;
  2. Redmine — запуск в Docker контейнере, создание и привязка Git репозитория, LDAP аутентификация;
  3. NGINX — доступ к Git репозиторию через HTTPS и LDAP аутентификация;
  4. ownCloud — LDAP аутентификация и монтирование папки через davfs2.

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

За эти годы я стал свидетелем того, как все больше и больше людей поддерживают манифест 12 Factor App и начинают реализовывать положения, описанные там. Это привело к появлению приложений, которые были значительно упрощены в развертывании и управлении. Однако примеры практического применения этих 12 факторов были довольно редким явлением на просторах сети Интернет.
12 Fractured Apps и Docker - 1

За время работы с Docker, преимущества 12 Factor App (12FA) стали для меня более ощутимыми. Например, 12FA рекомендует, чтобы логирование было настроено для стандартного вывода и обрабатывалось в качестве общего потока событий. Вы когда-нибудь использовали команду docker logs? Это и есть 12FA в действии!Читать полностью »

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

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

Microsoft представляет новые контейнерные технологии для следующего поколения облака - 1
Читать полностью »


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