laravel scheduler で env-variable が適用されない問題を解決する
ああ、多くの場合 Docker で supervisord を使って cron サービスを実行しています。 この cron サービスが動作する環境では、env が正しく注入されません。 ユーザーが異なるため環境変数も異なるからだと言われていますが、この問題を解決するには、以下のように記述すればよいです。 この部分が要点
GGAMI
ああ、多くの場合 Docker で supervisord を使って cron サービスを実行しています。
この cron サービスが動作する環境では、env が正しく注入されません。
ユーザーが異なるため環境変数も異なるからだと言われていますが、この問題を解決するには、以下のように記述すればよいです。
[supervisord]
nodaemon=true
[program:cron]
command=/bin/bash -c "printenv > /etc/environment && /usr/sbin/cron -f"
autostart=true
autorestart=true
user=root
redirect_stderr=true
stdout_events_enabled=true
stderr_events_enabled=true
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0