@Artem0071
Безработный mr. Junior

Очень медленный docker?

Еще не опытен в докере, поэтому возможно чего то не знаю
Проблема в следующем:

Установил докер, написал небольшой docker-compose с обычным nginx и php-fpm
Все работает, с этим проблем нет
Но то КАК это работает вызывает кучу вопросов

Используется composer, если использовать "нативный" композер, то он устанавливает все зависимости за уловные секунд 40-50
Если устанавливать зависимости из под контейнера, то это спокойно можно идти заваривать чай. Все устанавливается минуты за 2 если не больше

То же самое с npm. За время которое работает npm run dev можно спокойно идти по своим делам

Так же при открытии обычной страницы
Если делать это "по старому"(не через докер) то все грузится за пару секунд
Если заходить через докер, то это не менее вечных секунд 30

Все это дело происходит на маке:
MacBook Pro (Retina, 13-inch, Late 2013)
2,6 GHz 2‑ядерный процессор Intel Core i5
8 ГБ 1600 MHz DDR3
Macintosh HD
Intel Iris 1536 МБ

Думал что может дело в системе, тк до этого не пользовался докером и была целая куча разных пакетов установлено. Решил почистить систему, но результата это не принесло
  • Вопрос задан
  • 6074 просмотра
Пригласить эксперта
Ответы на вопрос 5
Ответ написан
Комментировать
Выглядит так, как будто у контейнера просто мало ресурсов. Попробуйте покрутить ползунки в Docker Desktop, если ещё не пробовали: Preferences -> Resources. Сеть он вроде как не режет, а вот memory и cpu да.
5e7db6afc18c4615357690.png

У меня такая же конфигурация железа, подобных проблем не замечаю.
Правда я и не вижу смысла запускать сборки зависимостей и dev-среды внутри контейнера. Обычно используется просто volume (пробрасывается локальный путь). Объясните, зачем вам запускать `npm run dev` внутри контейнера?
Ответ написан
@Kostik_1993
Web Developer
Это конечно же будет баян, но НУЖНО СТАВИТЬ ЛИНУКС и все у вас будет работать хорошо. Я заметил это еще года три назад. Сначала парился с окнами, потом с маком, в итоге пилю все проекты в Ubuntu и не знаю проблем, кроме одной - отсутствие скетча или фотошопа, что конечно же бесит, но если вам с ними работать только в readonly то можно выгружать в Zeplin и брать оттуда. Единственное что я хочу попробовать это перейти на более свежее мак железо и софт и там возможно что-то стало по другому, но это все условности... если даже и будет быстро то это не открытие странички сайта за 100-200мс, а в районе 1 секунды, что не есть результат
Ответ написан
@Fortistello
Все дело в работе проброшенной внутрь докера папки (примонтированной фс внутри контейнера). Обратите внимание, если скопировать файлы проекта в соседнюю папку внутри контейнера (например, если маунт идет в /app, то cp -r /app /app2) и там запустить npm install (или что угодно), то это произойдет сопоставимо быстро, как на родной системе (упрется в ограничение ресурсов докера). Решения лично у меня нет, но причина ясна.
Ответ написан
Комментировать
@lolrofl01
Хз актуально ли еще кому, но медленный докер десктоп на винде - из-за линух контейнеров. Долой их гнать! Все эти сказки про: "wsl 2 гораздо быстрее" - чушь собачья. Переходите на windows контейнеры. Правая кнопка мыши на докере в трее -> перейти на windows контейнеры. Далее выставляете настройки вот так:
620e460d21e88523621787.png

Все. Теперь сайты раза в 3-4 быстрее будут работать на докере. Пробовал на 2х компах и одних и тех же проектах - результаты идентичны. Сразу оговорюсь, что я у меня на сервере нет докера, и нет связи серверного докера с докером на компе. У кого есть - может будут проблемы, я не знаю. А вот чисто для разработки под виндой - рабочее решение.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы