Я скомпилировал PHP из исходного кода на Debian Растяжка в докер-контейнере.
Я добавил эту запись в свою конфигурацию супервизора:
command=/bin/sh -c 'QUEUE=orders/create APP_INCLUDE=/var/www/html/jobs/OrdersCreate.php php /var/www/html/includes/vendor/resque/php-resque/resque.php >> /var/www/log/OrdersCreate.log 2>&1'
autostart=true
autorestart=true
priority=11
stdout_events_enabled=true
stderr_events_enabled=true
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
Он регистрирует ошибку:
/bin/sh: 1: php: Permission denied.
Если я добавлю полный путь к PHP / usr / bin / php / bin / php
, он работает нормально.
Почему это и как я могу заставить его работать, не указывая полный путь?
Вам необходимо отредактировать переменную среды $ PATH
, чтобы включить местоположение, в котором находится двоичный файл php
.
В вашем Dockerfile:
ENV PATH "$PATH:/usr/bin/php/bin"