Docker4Drupal ставил год назад, с тех пор вышла новая версия Composer.
Выполняю
sudo composer self-update --2
Пишет
PHP Warning: PHP Startup: Unable to load dynamic library 'gd2' (tried: /usr/lib/php/20190902/gd2 (/usr/lib/php/20190902/gd2: cannot open shared object file: No such file or directory), /usr/lib/php/20190902/gd2.so (/usr/lib/php/20190902/gd2.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
The "cweagans/composer-patches" plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
The "drupal/console-extend-plugin" plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
The "drupal/core-composer-scaffold" plugin was skipped because it requires a Plugin API version ("^1.0.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
The "zaporylie/composer-drupal-optimizations" plugin was skipped because it requires a Plugin API version ("^1.1") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
You are already using the latest available Composer version 2.0.12 (2.x channel).
The "cweagans/composer-patches" plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
The "drupal/console-extend-plugin" plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
The "drupal/core-composer-scaffold" plugin was skipped because it requires a Plugin API version ("^1.0.0") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
The "zaporylie/composer-drupal-optimizations" plugin was skipped because it requires a Plugin API version ("^1.1") that does not match your Composer installation ("2.0.0"). You may need to run composer update with the "--no-plugins" option.
You are already using the latest available Composer version 2.0.12 (2.x channel).
Выплняю
sudo composer self-update --2 --no-plugins
Пишет
PHP Warning: PHP Startup: Unable to load dynamic library 'gd2' (tried: /usr/lib/php/20190902/gd2 (/usr/lib/php/20190902/gd2: cannot open shared object file: No such file or directory), /usr/lib/php/20190902/gd2.so (/usr/lib/php/20190902/gd2.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
You are already using the latest available Composer version 2.0.12 (2.x channel).
You are already using the latest available Composer version 2.0.12 (2.x channel).
Тем не менее версию все равно показывает первую.
Комментарии
Обнови файлы d4d у текущего проекта и новые проекты тоже начинай используя новые файлы d4d.
Обновил для проекта файлы отсюда:
https://github.com/wodby/docker4drupal/releases/tag/5.4.28
Пишет.
ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/
Вроде обновилось
composer --version
PHP Warning: PHP Startup: Unable to load dynamic library 'gd2' (tried: /usr/lib/php/20190902/gd2 (/usr/lib/php/20190902/gd2: cannot open shared object file: No such file or directory), /usr/lib/php/20190902/gd2.so (/usr/lib/php/20190902/gd2.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Composer version 2.0.12 2021-04-01 10:14:59
Если я правильно понимаю версия Композера все же обновилась. Но проекту необходима библиотека gd2. Как ее установить?
Уже разными способами пробовал - не получается.
https://www.google.ru/search?q=php+gd2+install
Отличный прям совет для окружения кем-то созданного в докере? Нет конечно.
Да отстань ты от меня. Захочешь - слово "докер" добавишь в запрос.
Не надо в старые проекты бездумно класть все файлы подряд. Для начала достаточно обновить пхп-тэг:
https://github.com/wodby/docker4drupal/blob/master/.env#L35
То есть поменять всего одно значение в одном файле.
Прописал в .env
PHP_TAG=7.4-dev-4.24.4
вместо
PHP_TAG=7.4-dev-4.24.1
Повлияет?
sudo apt install php7.4-gd пишет:
Уже установлен пакет php7.4-gd самой новой версии (7.4.3-4ubuntu2.4).
Т.е. вроде установлено.
Тем не менее
composer --version
Выдает:
PHP Warning: PHP Startup: Unable to load dynamic library 'gd2' (tried: /usr/lib/php/20190902/gd2 (/usr/lib/php/20190902/gd2: cannot open shared object file: No such file or directory), /usr/lib/php/20190902/gd2.so (/usr/lib/php/20190902/gd2.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Composer version 2.0.12 2021-04-01 10:14:59
Это как?
Окружение не забывай перезагружать... Если не умеешь, то комп перезагрузи.
Комп перезагружал. Все равно не работает.
Попробуй docksal, d4d намного сложнее для новичков
не ставится docksal у меня увы. А gd библиотека у меня и раньше не ставилась. Пока проблема в ней.
Заменил в php.ini
extension=gd2
на
extension=gd
Теперь composer --version выдает:
PHP Warning: Module 'gd' already loaded in Unknown on line 0
Composer version 2.0.12 2021-04-01 10:14:59
Что это значит?
это значит что библиотеке gd загружкается несколько раз
Главное, что загружается!
Ну судя по путям, то у тебя в системе одна версия php, в докере другая.
И где/что ты правишь/ставишь - известно лишь тебе.
Снеси всё и делай по свежим мануалам из инета... их полно.
В docker4drupal не надо в контейнер устанавливать, там всё есть. И гд, и мэджик.
"Снеси всё" - я не в первый раз ставлю D4D, у меня и раньше были проблемы с gd.
"не надо в контейнер устанавливать" - а куда надо?
Можно еще вопрос. Что значает (?):
ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/
make: *** [docker.mk:22: up] Ошибка 1
Я ж вроде обновил Композер...
ERROR: Version in "./docker-compose.yml" is unsupported. - Мартин помог
https://github.com/linkedin/datahub/issues/2020
Не совсем понял что это было.
В файле docker-compose.yml в первой строке указывается версия. Это не версия файла, а версия синтаксиса или что-то в этом роде.
По поводу gd и gd2 - их вообще никуда не надо устанавливать. Они уже есть в контейнере. Очень похоже на то, что проблемы у тебя именно из-за того, что ты что-то повторно пытаешься установить в контейнер.
Итак с этим вопросом вроде разобрался. Всем спасибо!