Сообщения

Сообщения за 2020

Инсталлируем Linux на MacOS при помощи QEMU

Изображение
В этой статье я хочу рассказать и показать как создать  и запускать виртуальную машину с Ubuntu 20l.10 при помощи QEMU на MacOs (BigSur). Что такое QEMU Quick EMUlator (QEMU) это эмулятор "железа" с открытым исходным кодом ( лицензия GPLv2 ), который для ускорения работы виртуальных машин может использовать различные акселераторы. На Linux это KVM , который встроен в ядро операционной системы, На  MacOS - это HVF . На сайте QEMU утверждается, что производительность виртуальных машин на основе QEMU близка к производительности таких машин на физическом железе. Давате проверим :). Если тексту с картинками вы предпочитаете видео, то вот мой обзор QEMU на YouTube. Устанавливаем QEMU Установить QEMU на MacOS можно разными способами. У меня стоит Homebrew, с его помощью я и установил QEMU  brew install qemu Проверить, установлен ли QEMU можно запросив версию программы.  qemu-system-x86_64 –version   Если установка закончилась успешно, то вы получите что-то вроде такого сообщения. Д

Как запустить Linux GUI приложения из докер-контейнера

Изображение
Признаюсь сразу,  мне было интересно попробовать это из "спортивного" интереса но я не вижу большого практического смысла в этом. В таком случае использование виртуальной машины считаю более целесообразным. В статье я расскажу про самый простой способ – запуск докер-контейнера из специально подготовленного докер-имиджа с Docker Hub.  Если тексту с картинками вы предпочитаете видео, то вот мой обзор на YouTube. Принцип работы с такими докер-контейнерами единый Запускаем подходящий докер-контейнер. В статье я опишу несколько из них. Подключаем приложение для удаленной работы с рабочим столом системы, работающей в контейнере. Это может быть VNC или  Remote Desktop. На Маке VNC клиент встроен в Finder, а Remote Desktop можно скачать из AppStore. На Windows ситуация обратная. В большинстве случаев приложение Remote Desktop входит в состав операционной системы, а VNC клиента можно скачать. Рассмотрим работу с таким контейнером на примере одного из самых функциональных докер-имиджей

Отладка сборки докер-имиджа

Изображение
Сборка докер-имиджей не всегда идет хорошо. Бывает, что билд заканчивается ошибкой, а порой, что зачастую еще хуже, билд прошел успешно, но имидж получается не такой как планировалось и в чем проблема не  понятно. В такой ситуации может очень выручить понимание того как происходит сборка докер-имиджа и как можно проверить состояние докер-имиджа на промежуточных этапах. Если тексту с картинками вы предпочитаете видео, то вот мой обзор отладки докер-имижа на YouTube Как известно, сборка докер-имиджа разбита на этапы и каждый такой этап выполняется в отдельном докер-контейнере, который потом формирует промежуточный докер-имидж. Самый первый контейнер  формируется из команды FROM в Dockerfile. Вот скриншот сборки для моего довольно простого докер-файла и в нем команда docker image build создала семь промежуточных докер-имиджей, а восьмой - стал финальным. Промежуточные докер-имиджи не удаляются, а сохраняются. Их можно посмотреть командой  docker image ls -a Теперь переходим к самому инт

Отладка Node.js приложения в докер-контейнере

Изображение
В этой статье хочу рассказать как  настроить отладку Node.js приложения работающего в Docker-контейнере. В большинстве случаев нет никакой проблемы, чтобы отладить приложение локально, но некоторые дефекты в работе приложения проявляются только будучи запущенными в рамках контейнера. В такой ситуации гораздо эффективнее и быстрее обнаружить и исправить проблему если подключить полноценный отладчик.  Весть процесс, с большего, состоит из 3-х шагов. Надо изменить запуск Node.js, чтобы он работал с включенным режимом отладки. Открыть доступ к порту, указанному при включении режима отладки в Node.js. Настроить инструмент для отладки. Это может быть любая IDE. Многие разработчики пользуются VS Code, я им тоже пользуюсь, на его примере я и покажу в этой статье как это сделать. Если тексту с картинками вы предпочитаете видео, то вот мой обзор отладки Node.js приложения в докер-контейнере на YouTube   Я этого примера создал простое Node.js приложение и докер-файл для него. Полный пример Node.j

Play with Docker (PWD) - докер в твоем браузере

Изображение
Play with Docker (PWD) это проект разработанный для изучения докера. Сервис может быть очень полезен тем, кто изучает докер так как дает возможность попробовать весь функционал докера прямо из браузера и не требуется ничего устанавливать локально. При это работает все исключительно быстро и буквально в течении секунды создается новая "виртуальная машина". Сервис предоставляет на 4 часа до 5 как-бы виртуальных Linux-машин, на которых уже установлена последняя версия Docker Community Edition.  Сервис построен по технологии Docker-in-Docker. Так что это не настоящие виртуальные машины, а по сути докер-контейнеры с Linux.  Если тексту с картинками вы предпочитаете видео, то вот мой обзор Play-with-Docker на YouTube  Доступ к сервису бесплатный, требуется лишь логин на Docker Hub. Хостинг проекта спонсируется Docker Inc. и, ксати, на одной из конференций DockerCon утверждалось, что Docker Inc сама использует его  для обучения своих новых сотрудников. Итак,  краткий перечень того,

Health Check для докер-контейнера

Изображение
С версии докера 1.12 в докер-контейнере появилась возможность проверки работоспособности контейнера – так называемый health check.  Типичный health check организуется периодическим вызовом некой команды, которая проверяет «жив» ли сервис, который исполняется в контейнере. Так, для веб-сервера который отвечает за работу некоторого сайта это может быть команда curl которая проверяет переделённую страницу веб-сайта, это может быть оценка используемой памяти сервисом или загрузка процессора в течении некоторого времени. Статус «здоровья» докер-контейнера до первой проверки принимает значение “starting”. После любой успешной проверки он становится “healthy”. Если тест «падает» несколько раз подряд в течении определенного интервала, то такой контейнер считается «плохим» (unhealthy). Статус докер-контейнера можно проверить командами “docker ps” и “docker container ls”. Если тексту с картинками вы предпочитаете видео, то вот мой обзор healthcheck для docker container на YouTube. Как включить h

Azure Static Web Apps - еще один способ бесплатного хостинга статического веб-сайта

Изображение
В прошлой статье я рассказывал как можно использовать Azure Storage Account для хостинга статических веб-сайтов. А сейчас я хочу рассказать еще об одном сервисе Azure для подобных задач - Azure Static Web Apps. На данный момент сервис находится в стадии Preview и его использование бесплатно . В рамках бесплатного использования Azure разрешает задеплоить до 10 сайтов, веб-приложений. Полагаю, что, когда сервис выйдет из preview эта квота такой и останется. Кстати, если тексту с картинками вы предпочитаете видео, то вот мой обзор Azure Static Web Apps на YouTube Azure Free Account Как обычно, хочу напомнить, что если сейчас у вас нет, аккаунта на Azure, то можно создать бесплатный. Вот здесь , в лекции "Step-by-step: Create Azure account and access to free resources" я рассказываю и показываю как его создать за 5 минут. Деплоймент веб-сайта Как и в случае с Storage Account, сервис Static Web Apps — это serverless решение и обладает всеми его преимуществами но при имеет и нескол