Попытка включить/отключить xdebug в моем док-контейнере php-fpm.
Если я запускаю интерактивную оболочку, используя docker exec my_container bash
затем запустите:
sed -i 's/^#zend_extension/zend_extension/' /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
или же
sed -i 's/^zend_extension/#zend_extension/' /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
Файл /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
имеет #
добавлено и удалено, как и ожидалось. Однако мой скрипт делает то же самое:
docker exec my_container bash -c "sed -i 's/^#zend_extension/zend_extension/' /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini"
Тогда ничего не происходит. Насколько мне известно, я не использую переменные оболочки, чтобы не было проблем с расширением переменных.
До сих пор мой сценарий был:
docker exec -it my_container bash -c "cp /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini /tmp/xdebug.ini; sed -i 's/^#zend_extension/zend_extension /' /tmp/xdebug.ini; cp /tmp/xdebug.ini /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini"
Но я хотел бы докопаться до сути. Это сводит меня с ума.
Примечание: везде, где я говорю docker exec my_container
в мой_контейнер
на самом деле это пара команд в обратных кавычках, чтобы получить правильный контейнер, я просто говорю мой_контейнер
чтобы было понятнее.
Любые идеи?