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

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

12 друзей Docker-а – опенсорсные инструменты в помощь разработке

Dusty – Docker-powered среда разработки с MIT лицензией. Предназначена для оптимизации использования Docker Compose или управления контейнерами в Vagrant. Разработчики Dusty утверждают, что их продукт имеет более простую модель спецификаций, чем Docker Compose, умеет обрабатывать изоляцию зависимостей приложений, а также имеет улучшенную (в сравнении с Vagrant) систему обновления. Dusty позволяет выполнять многоступенчатые процедуры и создавать тесты для среды, как часть спецификации.

Пользователи MacOS должны быть знакомы с Homebrew, специальной системой управления пакетами для MacOS. Whalebrew позволяет устанавливать образы Docker и запускать их непосредственно из командной строки через алиас, как если бы они были локальными исполняемыми файлами. Установка пакетов происходит элементарно:

Пакеты, контролируемые Whalebrew, работают лучше всего. Но теоретически любой образ Docker, который работает через CLI, тоже должен функционировать.

12 друзей Docker-а – опенсорсные инструменты в помощь разработке

Инструмент с BSD-лицензией разработан под язык Go для создания статических бинарников и упаковки их в контейнеры. Ключевая особенность Gockerize – возможность автоматического применения набора патчей к стандартной библиотеке Golang. Для нормального функционирования Gockerize требуется Go, Docker 1.5+ и оболочка Bash.

Данный инструмент, позволяет запускать образы Docker, как на гипервизоре. Hyper использует Docker, QEMU и Xen для достижения своих целей. Разработчики утверждают, что Hyper использует минимальное количество ресурсов (28 МБ), загружается со скоростью контейнера, а не виртуальной машины, обеспечивает высокую производительность и аппаратную изоляцию для приложений. Одним из вариантов использования Hyper является создание многопользовательских приложений на основе Docker.

Образы Docker похожи на бутерброды в непрозрачной упаковке: вы не всегда знаете, сколько в них слоев, и что внутри. Dive позволяет визуально исследовать слои в образе Docker через интерактивный UI. Вы можете понять, какие ингредиенты присутствуют в каждом слое, а также определить, как каждый слой повлиял на соседние (что добавилось или удалилось). Также можно проанализировать образ на наличие пустого или дублированного пространства и передать результаты в CI-конвейер, чтобы образ с большим количеством пустого места не участвовал в процессе сборки.

Иногда нужен просто GUI. Kitematic дает графический интерфейс для управления контейнерами Docker на MacOS, Ubuntu Linux и Windows. Дополнительные удобства Kitematic: автоматическое предоставление данных об объеме контейнера, встроенный CLI Docker и автоматическая синхронизация состояния в соответствии с изменениями (например, при добавлении новых образов).

12 друзей Docker-а – опенсорсные инструменты в помощь разработке

Мир Unix имеет давнюю традицию применения небольших программ для решения крупных проблем. Logspout применяет ту же философию в управлении журналами контейнеров Docker. Инструмент передает все журналы (stdout и stderr) контейнеров на конкретном хосте в указанную цель. Полученные агрегированные журналы можно просматривать в режиме реального времени, просто читая поток HTTP.

Elsy описывается как многофункциональный, мультиязычный инструмент сборки, использующий на базе Docker и Docker Compose. Elsy позволяет последовательно создавать репозиторий в разных средах и свести к минимуму инструменты, необходимые для выполнения сборки, независимо от ЯП. Интересная особенность – blackbox-test позволяет тестировать любой контейнер под “боевой” нагрузкой, отражающей фактическое использование на производстве – дайте Elsy контейнер, и он его хорошенько “помучает”.

Даже самый простой стек Docker может иметь много составляющих: контейнеры, образы, сети, тома, секреты. Отслеживать все это очень сложно. Portainer предоставляет веб-интерфейс для сред Docker, будь то одиночные хосты или кластеры, а также обеспечивает визуализацию всех используемых ресурсов. Управление всеми общими компонентами находятся не более чем в нескольких щелчках мыши. А самое приятное – все это развертывается в существующей инфраструктуре Docker отдельным контейнером.

Docker Compose UI – это проект (с лицензией от MIT), предоставляющий веб-интерфейс для Docker Compose, написанный на Python с использованием платформы Flask. Контейнеры можно запускать как на локальном, так и на удаленном хосте, а сам пользовательский интерфейс Docker Compose доступен для удобства в контейнере Docker. Инструмент поставляется с предустановленными демо-проектами, а некоторые из них даже могут масштабироваться.

Вы пропустили

AEGIS Algorithms Android Angular Apache Airflow Apache Druid Apache Flink Apache Spark API API Canvas AppSec Architecture Artificial Intelligence Astro Authentication Authorization AutoGPT AWS AWS Aurora AWS Boto3 AWS EC2 AWS Lambda Azure Babylon.js Backend bash Beautiful Soup Bento UI Big Data Binary Tree Browser API Bun Career Cassandra Charts ChatGPT Chrome Extension Clean Code CLI ClickHouse Coding Codux Combine Compose Computer Context Fusion Copilot Cosmo Route CProgramming cron Cryptography CSS CTF Cypress DALL-E Data Analysis Data science Database dbt dbt Cloud deno Design Design Patterns Detekt Development Distributed Systems Django Docker Docker Hub Drizzle DRY DuckDB Express FastAPI Flask Flutter For Beginners Front End Development Game Development GCN GCP Geospatial Git GitHub Actions GitHub Pages Gitlab GMS GoFr Golang Google Google Sheets Google Wire GPT-3 GPT3 Gradio Gradle Grafana Graphic Design GraphQL gRPC Guidance HMS Hotwire HTML Huawei HuggingFace IndexedDB InfoSec Interview iOS Jackknife Java JavaScript Jetpack Compose JSON Kafka Kotlin Kubernetes LangChain Laravel Linux LlaMA LLM localStorage Logging Machine Learning Magento Math Mermaid Micro Frontends Mobile Mobile App Development mondayDB MongoDB Mongoose MySQL Naming NestJS NET NetMock Networks NextJS NLP Node.js Nodejs NoSQL NPM OOP OpenAI OTP Pandas PDF PHP Playwright Plotly Polars PostgreSQL Prefect Productivity Programming Prometheus Puppeteer Pushover Python Pytorch Quarkus Rabbitmq RAG Ramda Raspberry Pi React React Native Reactor Redis REST API Revolut Riverpod RProgramming Ruby Ruby on Rails Rust Scalene SCDB ScyllaDB Selenium Servers Sklearn SLO SnowFlake Snowkase Software Architecture Software Development Solara Solid Spring Boot SQL SQLite Streamlit SudoLang Supabase Swift SwiftUI Tailwind CSS Taipy Terraform Testing Transformers TURN TypeScript Ubuntu UI Design Unix UX UX Design Vim Vite VSCode Vue Web Architecture Web Components Web Development Web Frameworks Web Scraping Web-разработка Webassembly Websocket Whisper Widgets WordPress YAML YouTube Zed Наука о данных Разное Тренды

Как исследовать и визуализировать данные МО для обнаружения объектов на изображениях