Поиск по сайту:

Как я перешел с Docker Desktop на Colima


Colima — это альтернатива Docker Desktop для macOS и Linux, которая теперь поддерживается DDEV.

DDEV — это инструмент с открытым исходным кодом, который упрощает запуск и запуск локальной среды разработки PHP за считанные минуты. Он мощный и гибкий благодаря конфигурациям среды для каждого проекта, которые можно расширять, контролировать версии и совместно использовать. Короче говоря, цель DDEV — позволить командам разработчиков использовать контейнеры в своем рабочем процессе без сложностей индивидуальной настройки.

DDEV заменяет более традиционные решения стека AMP (WAMP, MAMP, XAMPP и т. д.) гибким, современным решением на основе контейнеров. Поскольку DDEV использует контейнеры, он позволяет каждому проекту использовать любой набор приложений, версии веб-серверов, серверов баз данных, серверов поискового индекса и других типов программного обеспечения.

В марте 2022 года команда DDEV объявила о поддержке Colima, замены Docker Desktop с открытым исходным кодом для macOS и Linux. Colima имеет открытый исходный код, и, судя по всем сообщениям, она обеспечивает прирост производительности по сравнению с альтернативой, поэтому использование Colima кажется простым.

Миграция в Колиму

Во-первых, Colima — это почти полная замена Docker Desktop. Я говорю почти, потому что при использовании его в существующем проекте DDEV требуется некоторая реконфигурация. В частности, базы данных необходимо повторно импортировать. Решение состоит в том, чтобы сначала экспортировать базу данных, затем запустить Colima, а затем импортировать ее. Легкий.

Colima требует, чтобы была установлена команда Docker или Podman. В Linux также требуется Lima.

Docker устанавливается по умолчанию вместе с Docker Desktop для macOS, но он также доступен как отдельная команда. Если вы хотите использовать 100% чистую Colima, вы можете удалить Docker Desktop для macOS, а также самостоятельно установить и настроить клиент Docker. Полные инструкции по установке можно найти на сайте документации DDEV.

(Майк Анелло, CC BY-SA 4.0)

Если вы решите продолжать использовать как Colima, так и Docker Desktop, то при вводе команд docker из командной строки вы должны сначала указать, с каким контейнером вы хотите работать. Подробнее об этом в следующем разделе.

Установите Колима на macOS

В настоящее время у меня есть несколько локальных проектов, использующих Docker, а некоторые — Colima. Как только я пойму основы, мне не составит труда переключаться между ними.

  1. Для начала установите Colima с помощью Homebrew Brew install colima

  2. ddev poweroff (на всякий случай)

  3. Затем запустите Colima с помощью colima start --cpu 4 --memory 4. Опции --cpu и --memory должны быть только сделано один раз. После первого раза необходим только colima start.

  4. Если вы, как и я, являетесь пользователем DDEV, то вы можете запустить новый сайт Drupal 9 с помощью обычных команд ddev (ddev config, ddev start и т. д.). ) Рекомендуется включить мутагенную функцию DDEV для максимизации производительности.

Переключение между Colima и Docker Desktop

Если вы еще не готовы перейти на оптовую версию Colima, можно установить как Colima, так и Docker Desktop.

  1. Сначала poweroff ddev:ddev poweroff

  2. Затем остановите Колиму: colima stop

  3. Теперь запустите docker context use default, чтобы сообщить клиенту Docker, с каким контейнером вы хотите работать. Имя default относится к Docker Desktop для Mac. При запуске colima start он автоматически переключает Docker в контекст colima.

  4. Чтобы продолжить работу с контекстом по умолчанию (Docker Desktop), используйте команду ddev start.

Технически запуск и остановка Colima не требуются, но необходима команда ddev poweroff при переключении между двумя контекстами.

Последние версии Colima возвращают контекст Docker обратно к default, когда Colima останавливается, поэтому команда docker context use default больше не нужна. Несмотря на это, я по-прежнему использую docker context show, чтобы убедиться, что используется контекст default (Docker Desktop для Mac) или colima. По сути, термин контекст относится к тому поставщику контейнеров, которому клиент Docker направляет команды.

Попробуйте Колима

В целом, мне нравится то, что я вижу на данный момент. Я не столкнулся с какими-либо проблемами, и сайты на базе Colima кажутся немного более быстрыми (особенно когда включена функция Mutagen DDEV). Я определенно предвижу, что перенесу сайты проектов в Колиму в течение следующих нескольких недель.

Эта статья первоначально появилась в блоге DrupalEasy и переиздается с разрешения.