Я думаю, что способа перенести их нет. Хранилище containerd и хранилище docker образов разделены. Старые образы никуда не делись, просто демон вам их не показывает. Хотя физически они лежат и занимают место на диске.
Чем вызвано именно такое поведение Docker Desktop - к сожалению не знаю, не разобрался пока.
В local должен находиться версионируемый код проекта, а вы храните там библиотеки, которые подгружаются автоматически с помощью composer. Понятно, что можно исключить с gitignore, но зачем, если можно его хранить за пределами document_root? Это более надежно
Опираясь на последнее — не придется думать о том, чтобы не спалить содержимое этой директории через браузер. В вашем же случае придется явно запрещать доступ к этой директории в настройках веб-сервера, что излишне.
И еще. В модулях битрикса есть такая «фича», как пошаговая инсталляция/деинсталляция. В вашем случае она работать не будет. Использовать методы DoInstall и DoUninstall не является правильным. Сам битрикс при автоматической инсталляции (без участия пользователя) своих же модулей не вызывает эти методы. Подробнее можно посмотреть в этом MR — github.com/notamedia/console-jedi/issues/4
А они и выкатили. Получилось — как всегда. Теперь в битриксе три или четыре автозагрузчика :) А composer работает ради одной зависимости — symfony/console, на которой написана всего одна команда сомнительного назначения, без которой можно было бы обойтись. Чтобы использовать composer, встроенный в битрикс, для своих нужд, предлагается юзать merge-plugin dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=4637
Ок, я умываю руки из этой ветки, а то так на личности перейдем. Мне не о чем с Вами больше разговаривать, если Вы ставите свое мнение выше мнения других, более опытных коллег, и никак не пытаетесь прислушаться к нему. Вы не понимаете их, они не понимают Вас. Успехов Вам с поиском таких же, как Вы, их еще очень много… к сожалению.
Вам однозначно нужен наставник. Если вы уже не первый год пишете такой код, и к Вам не приходит понимание того, что так делать нельзя, то что-то Вы делаете не так, ИМХО. И перфекционизм тут ни при чем.
Вряд ли вам придется создавать сайты для миллионного бизнеса вот на таком движке.
«Зоопарк» технологий, как вы говорите, разводят не для того, чтобы систему намеренно усложнить, а как раз таки наоборот. Каждая технология в миллионном проекте предназначена для решения своей задачи
И если кто-то бездумно ввел какую-то технологию в проект необоснованно, а потом не может с этой технологией справиться, то заказчик явно нанял неадекватного подрядчика, и ему нужен аудитор, который быстро такого исполнителя забракует
А зачем вы заказчику вообще про git рассказываете? Вы ожидаете, что он начнет пользоваться инструментарием разработчиков, чтобы разворачивать свои сайты? Для чего козе баян?
Ну и вообще — ваш способ «простого» обновления сайта ничем не отличается от набора команды git pull или composer update. Ну или на худой конец можно и всю CMS в архив запаковать — сложность обновления то будет та же самая.
Только вот в итоге вы через какое-то время наткнетесь на другие грабли, которые не дадут вам так просто обновлять CMS с помощью копирования phar архика, поверьте.
Необходимость использования системы контроля версий не измеряется в количестве файлов. Есть люди, которые будут и один файл держать под версионным контролем, если это понадобится.
Да тут просто полный набор антипаттернов… и транслитерация с русского в именах функций, и глобалки, отсутствие следования стандартам и много чего еще. В 21 веке так не делают.
Я не поленился, клонировал репозиторий, открыл его в IDE. Надеялся найти там что-то интересное, но… нет, увольте. Когда открываешь файл, длиной в 1600+ строк, и видишь там столько много буков, что они закрывают 95% экрана, желание копаться дальше испаряется.
А вот, кстати, и файлик, скрин из IDE со встроенным анализатором ошибок
Лично я тоже ждал реакции от Битрикса, хоть какой-то. Но в ответ ничего не было, видимо были заняты подготовкой публикации по новой бот-платформе, а также примеров кода к ней, которые тоже не блещут наличием каких-то красивостей.
Ждал этого вопроса с самого начала :)
Если не брать в расчет личные обстоятельства (семья, ипотека), то переход к разработке на Symfony сейчас для меня будет большим дауншифтингом. Не говоря уже о других языках(Rails и Django у нас вообще, считай, нет). В мире 1С-Битрикс я обладаю достаточными знаниями, чтобы решать задачи любой сложности, тогда как мой уровень знаний Symfony не позволяет мне этого делать.
В моем регионе, по большому счету, и некуда уйти работать с фреймворками, т.к. Битрикс, считай, монополист. Если же появляются вакансии, связанные с разработкой на фреймворках, то они по уровню оплаты на 40-50% ниже того, что я имею сейчас, а личные обстоятельства (читай выше) не позволят мне так просто перейти на зарплату вдвое меньшую.
Я для себя сейчас выбрал несколько иной путь. Я хочу склонить компанию, в которой я работаю, к разработке на Symfony. Это принесет гораздо больше профита (как для меня, так и для всей компании в целом), при этом совсем не обязательно отказываться от разработки под 1С-Битрикс. Мы можем разрабатывать свои решения качественно, и знаем как это делать, благодаря накопленному опыту и коллективным знаниям, выложенных в Opensource.
Если оба этих начинающих будут дома заниматься самообучением, то оно по определению будет разным. Битриксоид будет пытаться изучить те инструменты, которыми Symfony разработчик пользуется в повседневной жизни, тогда как Symfony разработчик будет изучать те инструменты, о которых Битриксоид узнает только через много месяцев.
Когда началась вся эта заваруха с D7, на конференции Битрикс всем так и сказал, что новое ядро не будет совместимо со старым вообще никак, мол «надо двигаться вперед, отказываться от устаревших решений» и т.д. Видюшку даже могу найти, где Рыжиков об этом рассказывает.
Однако нет, в итоге они решили пойти по пути обратной совместимости и слить старое и новое ядро, делая постепенный переход. Только вот совместимость от этого только страдает, регулярно что-то отваливается при обновлениях.А новый модуль интернет-магазина таки не имеет полной обратной совместимости совершенно официально.
Я думаю, что способа перенести их нет. Хранилище containerd и хранилище docker образов разделены. Старые образы никуда не делись, просто демон вам их не показывает. Хотя физически они лежат и занимают место на диске.
Чем вызвано именно такое поведение Docker Desktop - к сожалению не знаю, не разобрался пока.
На маке будет работать зеркало, если включить containerd в настройках Docker Desktop.
General > Use containerd for pulling and storing images
В local должен находиться версионируемый код проекта, а вы храните там библиотеки, которые подгружаются автоматически с помощью composer. Понятно, что можно исключить с gitignore, но зачем, если можно его хранить за пределами document_root? Это более надежно
Опираясь на последнее — не придется думать о том, чтобы не спалить содержимое этой директории через браузер. В вашем же случае придется явно запрещать доступ к этой директории в настройках веб-сервера, что излишне.
И еще. В модулях битрикса есть такая «фича», как пошаговая инсталляция/деинсталляция. В вашем случае она работать не будет. Использовать методы DoInstall и DoUninstall не является правильным. Сам битрикс при автоматической инсталляции (без участия пользователя) своих же модулей не вызывает эти методы. Подробнее можно посмотреть в этом MR — github.com/notamedia/console-jedi/issues/4
или четыреавтозагрузчика :) А composer работает ради одной зависимости — symfony/console, на которой написана всего одна команда сомнительного назначения, без которой можно было бы обойтись. Чтобы использовать composer, встроенный в битрикс, для своих нужд, предлагается юзать merge-plugindev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=4637
«Зоопарк» технологий, как вы говорите, разводят не для того, чтобы систему намеренно усложнить, а как раз таки наоборот. Каждая технология в миллионном проекте предназначена для решения своей задачи
И если кто-то бездумно ввел какую-то технологию в проект необоснованно, а потом не может с этой технологией справиться, то заказчик явно нанял неадекватного подрядчика, и ему нужен аудитор, который быстро такого исполнителя забракует
Ну и вообще — ваш способ «простого» обновления сайта ничем не отличается от набора команды git pull или composer update. Ну или на худой конец можно и всю CMS в архив запаковать — сложность обновления то будет та же самая.
Только вот в итоге вы через какое-то время наткнетесь на другие грабли, которые не дадут вам так просто обновлять CMS с помощью копирования phar архика, поверьте.
Я не поленился, клонировал репозиторий, открыл его в IDE. Надеялся найти там что-то интересное, но… нет, увольте. Когда открываешь файл, длиной в 1600+ строк, и видишь там столько много буков, что они закрывают 95% экрана, желание копаться дальше испаряется.
Если не брать в расчет личные обстоятельства (семья, ипотека), то переход к разработке на Symfony сейчас для меня будет большим дауншифтингом. Не говоря уже о других языках(Rails и Django у нас вообще, считай, нет). В мире 1С-Битрикс я обладаю достаточными знаниями, чтобы решать задачи любой сложности, тогда как мой уровень знаний Symfony не позволяет мне этого делать.
В моем регионе, по большому счету, и некуда уйти работать с фреймворками, т.к. Битрикс, считай, монополист. Если же появляются вакансии, связанные с разработкой на фреймворках, то они по уровню оплаты на 40-50% ниже того, что я имею сейчас, а личные обстоятельства (читай выше) не позволят мне так просто перейти на зарплату вдвое меньшую.
Я для себя сейчас выбрал несколько иной путь. Я хочу склонить компанию, в которой я работаю, к разработке на Symfony. Это принесет гораздо больше профита (как для меня, так и для всей компании в целом), при этом совсем не обязательно отказываться от разработки под 1С-Битрикс. Мы можем разрабатывать свои решения качественно, и знаем как это делать, благодаря накопленному опыту и коллективным знаниям, выложенных в Opensource.
Однако нет, в итоге они решили пойти по пути обратной совместимости и слить старое и новое ядро, делая постепенный переход. Только вот совместимость от этого только страдает, регулярно что-то отваливается при обновлениях.А новый модуль интернет-магазина таки не имеет полной обратной совместимости совершенно официально.