Хочу представить вам новую технологию, которую создали русские программисты — «Коробка». Основную роль в её разработке сыграл Александр Коробкин и его команда. Для нас она интересна тем, что в некотором роде является российской альтернативой Docker. В ней они объединили доступные инновационные возможности с национальными спецификам
![](https://habrastorage.org/getpro/habr/upload_files/819/059/c95/819059c95433788f88b7171cecb99971.png)
Что такое Коробка?
Аналогично Docker, Коробка представляет собой платформу для разработки, развертывания и управления контейнеризированными приложениями. Технология базируется на использовании контейнеров, позволяя изолировать приложение и его зависимости в отдельные «коробки».
Основная цель «Коробки» — обеспечить большую независимость развёртывания приложений, минимизировать возможные конфликты в рабочей среде и облегчить процесс доставки приложения в производственную среду.
Отличия между Коробкой и Docker
Можно спросить, в чем отличие «Коробки» от Docker? Ответ в том, что эта технология имеет ряд ключевых особенностей:
Безопасность: Коробка ставит своей главной целью обеспечение высокого уровня безопасности. В то время, как сам Docker прекрасно рабочий инструмент, Коробка сосредоточилась на создании дополнительных мер безопасности для максимальной изоляции контейнеров и соответсвии строгим российским стандартам безопасности.
Простота использования: Команда Коробкин хочет, чтобы их технология была доступна для использования. Большой акцент сделан на упрощение инструментов для новичков и поддержку продвинутых возможностей для опытных пользователей.
Поддержка русскоязычного сообщества: В отличие от Docker, у Коробки есть сильная поддержка и активное взаимодействие с русскоязычным сообществом программистов.
Кто может использовать Коробку?
Также как и Docker, Коробка подходит любой компании или разработчику, который хочет быстро и надёжно разворачивать и масштабировать свои приложения. «Коробка» особенно полезна для тех, кто хочет обеспечить безопасность своих приложений, идущую в ногу с российскими стандартами.
Ниже представлены команды для управления Коробками.
Установка «Коробка»
sudo wget -qO- https://getbox.ru/install.sh | bash
!!! На данный момент сайт недоступен. Коробкин проходит этапы тестирования и доработок
Запуск «Коробки»
sudo service box start
Создание нового контейнера
box create -n my_app -i box/ubuntu:latest
где '‑n' — это имя вашего контейнера, а '‑i' — имя образа.
Запуск контейнера
box start -n my_app
Остановка контейнера
box stop -n my_app
Вывод списка контейнеров
box list
Обновление «Коробки»
sudo box upgrade
Учитывая динамичность разработки «Коробки», стоит помнить, что команды и функционал могут обновляться. Советуем следить за новостями проекта на официальном сайте или в русскоязычной документации.
Реализация Коробок
Александр Коробкин и его команда выбрали в качестве основного инструмента для создания «Коробки» язык программирования Golang (Go). Этот выбор совершенно не случаен, так как Go отличается от других языков программирования своей мощью, скоростью и простотой.
Go особенно полезен при работе с многопоточностью и сетевыми приложениями, что идеально подходит для создания платформы контейнеризации, такой как «Коробка». Кроме того, Go отличается отличной поддержкой систем многопользовательской работы, чего нельзя сказать о большинстве других языков программирования.
package main
import ( "fmt" "box/commands" )
func main() { // create a new box box := box.New("box/ubuntu:latest", "my_app") newBox, err := box.Create() if err != nil { panic(err) }
// start the box
err = newBox.Start() if err != nil { panic(err) }
fmt.Println("Box successfully created and started!") } ```
«Коробка» изначально разрабатывалась с использованием Go, что обеспечивает высокую производительность и возможность работы с большим объемом операций.
Использование Go для разработки «Коробки» позволило команде выпускать обновления и новые функции гораздо быстрее, чем это было бы возможно при использовании других языков. Большая часть функциональности «Коробки», такой как управление контейнерами, сетевые подключения и безопасность, является прямым результатом использования Go при разработке. Кроме того, это сделало «Коробку» легкой для развертывания и масштабирования, что является ключевым критерием для любого проекта на базе контейнерной технологии.
Итак, подводя итог, можно сказать, что язык программирования Go играет важную роль в успехе «Коробки». Этот язык обеспечивает уникальный баланс между производительностью, эффективностью и простотой использования, что превосходно подходит для целей и ценностей проекта «Коробка».
Итог
Основываясь на долгом опыте работы в сфере разработки программного обеспечения, Коробкин ориентирован на построение технологии, которая подходит для российских реалий и отвечает потребностям российского бизнеса и программистов.
«Коробка» это не просто клон Docker. Это прорыв в контейнеризации отечественных разработок, который имеет все шансы стать значимой технологией на рынке.
На данный момент данная технология на этапе тестирования, в ближайшее время планируется предоставить доступ всем желающим.