-
Notifications
You must be signed in to change notification settings - Fork 60
init script fixes #214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
init script fixes #214
Conversation
|
Thanks for the PR. The test is broken – can you take a look? |
|
There isnt clear what is failing, but running it locally I see in the storage logs this: [2026-01-08 21:31:18] production.WARNING: No drop FK logic for driver sqlite
[2026-01-08 21:31:18] production.WARNING: No drop FK logic for driver sqlite
[2026-01-08 21:31:18] production.WARNING: No drop FK logic for driver sqlite
[2026-01-27 18:13:03] production.ERROR: DomainException: Error when trying to read crontab : crontab: must be suid to work properly in /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabAdapter.php:80
Stack trace:
#0 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(169): TiBeN\CrontabManager\CrontabAdapter->readCrontab()
#1 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(61): TiBeN\CrontabManager\CrontabRepository->readCrontab()
#2 /var/www/html/app/Console/Commands/InstallSchedulerCommand.php(23): TiBeN\CrontabManager\CrontabRepository->__construct()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InstallSchedulerCommand->handle()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#9 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#11 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#13 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\Component\Console\Application->run()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(426): Illuminate\Console\Application->call()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\Foundation\Console\Kernel->call()
#17 /var/www/html/app/Console/Commands/InitCommand.php(361): Illuminate\Support\Facades\Facade::__callStatic()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): App\Console\Commands\InitCommand::{closure:App\Console\Commands\InitCommand::tryInstallingScheduler():360}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\Console\View\Components\Task->render()
#20 /var/www/html/app/Console/Commands/InitCommand.php(360): Illuminate\Console\View\Components\Factory->__call()
#21 /var/www/html/app/Console/Commands/InitCommand.php(62): App\Console\Commands\InitCommand->tryInstallingScheduler()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#28 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#30 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#31 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#32 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(197): Symfony\Component\Console\Application->run()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate\Foundation\Console\Kernel->handle()
#35 /var/www/html/artisan(16): Illuminate\Foundation\Application->handleCommand()
#36 {main}
[2026-01-27 18:13:04] production.ERROR: DomainException: Error when trying to read crontab : crontab: must be suid to work properly in /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabAdapter.php:80
Stack trace:
#0 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(169): TiBeN\CrontabManager\CrontabAdapter->readCrontab()
#1 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(61): TiBeN\CrontabManager\CrontabRepository->readCrontab()
#2 /var/www/html/app/Console/Commands/InstallSchedulerCommand.php(23): TiBeN\CrontabManager\CrontabRepository->__construct()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InstallSchedulerCommand->handle()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#9 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#11 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#13 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\Component\Console\Application->run()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(426): Illuminate\Console\Application->call()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\Foundation\Console\Kernel->call()
#17 /var/www/html/app/Console/Commands/InitCommand.php(361): Illuminate\Support\Facades\Facade::__callStatic()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): App\Console\Commands\InitCommand::{closure:App\Console\Commands\InitCommand::tryInstallingScheduler():360}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\Console\View\Components\Task->render()
#20 /var/www/html/app/Console/Commands/InitCommand.php(360): Illuminate\Console\View\Components\Factory->__call()
#21 /var/www/html/app/Console/Commands/InitCommand.php(62): App\Console\Commands\InitCommand->tryInstallingScheduler()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#28 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#30 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#31 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#32 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(197): Symfony\Component\Console\Application->run()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate\Foundation\Console\Kernel->handle()
#35 /var/www/html/artisan(16): Illuminate\Foundation\Application->handleCommand()
#36 {main}
[2026-01-27 18:13:06] production.ERROR: DomainException: Error when trying to read crontab : crontab: must be suid to work properly in /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabAdapter.php:80
Stack trace:
#0 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(169): TiBeN\CrontabManager\CrontabAdapter->readCrontab()
#1 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(61): TiBeN\CrontabManager\CrontabRepository->readCrontab()
#2 /var/www/html/app/Console/Commands/InstallSchedulerCommand.php(23): TiBeN\CrontabManager\CrontabRepository->__construct()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InstallSchedulerCommand->handle()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#9 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#11 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#13 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\Component\Console\Application->run()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(426): Illuminate\Console\Application->call()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\Foundation\Console\Kernel->call()
#17 /var/www/html/app/Console/Commands/InitCommand.php(361): Illuminate\Support\Facades\Facade::__callStatic()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): App\Console\Commands\InitCommand::{closure:App\Console\Commands\InitCommand::tryInstallingScheduler():360}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\Console\View\Components\Task->render()
#20 /var/www/html/app/Console/Commands/InitCommand.php(360): Illuminate\Console\View\Components\Factory->__call()
#21 /var/www/html/app/Console/Commands/InitCommand.php(62): App\Console\Commands\InitCommand->tryInstallingScheduler()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#28 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#30 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#31 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#32 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(197): Symfony\Component\Console\Application->run()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate\Foundation\Console\Kernel->handle()
#35 /var/www/html/artisan(16): Illuminate\Foundation\Application->handleCommand()
#36 {main}
[2026-01-27 18:13:08] production.ERROR: DomainException: Error when trying to read crontab : crontab: must be suid to work properly in /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabAdapter.php:80
Stack trace:
#0 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(169): TiBeN\CrontabManager\CrontabAdapter->readCrontab()
#1 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(61): TiBeN\CrontabManager\CrontabRepository->readCrontab()
#2 /var/www/html/app/Console/Commands/InstallSchedulerCommand.php(23): TiBeN\CrontabManager\CrontabRepository->__construct()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InstallSchedulerCommand->handle()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#9 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#11 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#13 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\Component\Console\Application->run()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(426): Illuminate\Console\Application->call()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\Foundation\Console\Kernel->call()
#17 /var/www/html/app/Console/Commands/InitCommand.php(361): Illuminate\Support\Facades\Facade::__callStatic()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): App\Console\Commands\InitCommand::{closure:App\Console\Commands\InitCommand::tryInstallingScheduler():360}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\Console\View\Components\Task->render()
#20 /var/www/html/app/Console/Commands/InitCommand.php(360): Illuminate\Console\View\Components\Factory->__call()
#21 /var/www/html/app/Console/Commands/InitCommand.php(62): App\Console\Commands\InitCommand->tryInstallingScheduler()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#28 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#30 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#31 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#32 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(197): Symfony\Component\Console\Application->run()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate\Foundation\Console\Kernel->handle()
#35 /var/www/html/artisan(16): Illuminate\Foundation\Application->handleCommand()
#36 {main} And this in the stdout logs koel-1 | Starting cron daemon...
koel-1 | Starting php-fpm...
koel-1 | [27-Jan-2026 18:13:01] NOTICE: [pool www] pm.start_servers is not set. It's been set to 2.
koel-1 | No .env file found in /var/www/html. Make sure to mount a .env file to store the configuration. You can use the koel:init command (see https://github.com/koel/docker#the-koelinit-command) for a guided setup.
koel-1 |
koel-1 | See https://github.com/koel/koel/blob/master/.env.example for an example .env file.
koel-1 | Optimizing config...
koel-1 | AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.23.0.3. Set the 'ServerName' directive globally to suppress this message
koel-1 |
koel-1 | INFO Configuration cache cleared successfully.
koel-1 |
koel-1 |
koel-1 | INFO Configuration cached successfully.
koel-1 |
koel-1 | Running installer...
koel-1 |
koel-1 |
koel-1 | KOEL INSTALLATION WIZARD.
koel-1 |
koel-1 |
koel-1 | INFO Remember, you can always install/upgrade manually using the guide at https://docs.koel.dev.
koel-1 |
koel-1 | INFO Running in no-interaction mode.
koel-1 |
koel-1 | Clearing caches ................................................ 7.36ms DONE
koel-1 | Copying .env file .............................................. 0.29ms DONE
koel-1 | Retrieving app key ............................................. 0.00ms DONE
koel-1 | Using app key: exactly-32-chara.. ..................................... DONE
koel-1 | Migrating database ............................................. 6.90ms DONE
koel-1 | Data already seeded -- skipping ....................................... DONE
koel-1 | manifest.json already exists -- skipping .............................. DONE
koel-1 | manifest-remote.json already exists -- skipping ....................... DONE
koel-1 | Installing Koel scheduler ..................................... 11.50ms FAIL
koel-1 |
koel-1 | ERROR Oops! Koel installation or upgrade didn't finish successfully.
koel-1 |
koel-1 | ERROR Please check the error log at storage/logs/laravel.log and try again.
koel-1 |
koel-1 | ERROR For further troubleshooting, visit https://docs.koel.dev/troubleshooting.
koel-1 |
koel-1 | ERROR 😥 Sorry for this. You deserve better.
koel-1 | It seems that it uses sqlite even tho I have pgsql configured? |
Yes. |
Well, you can pass env to containers via |
It's a Laravel thing, not Docker. |
Given that Laravel's docs say Any variable in your .env file can be overridden by external environment variables such as server-level or system-level environment variables.Can we add an empty .env file in the /var/www/html dir, so it "works" and if a user wants to bind mount one, it should work as well. |
|
Tests are still failing. |
|
Even after having the [2026-01-08 21:31:18] production.WARNING: No drop FK logic for driver sqlite
[2026-01-08 21:31:18] production.WARNING: No drop FK logic for driver sqlite
[2026-01-08 21:31:18] production.WARNING: No drop FK logic for driver sqlite
[2026-01-27 18:32:37] production.ERROR: DomainException: Error when trying to read crontab : crontab: must be suid to work properly in /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabAdapter.php:80
Stack trace:
#0 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(169): TiBeN\CrontabManager\CrontabAdapter->readCrontab()
#1 /var/www/html/vendor/tiben/crontab-manager/src/CrontabManager/CrontabRepository.php(61): TiBeN\CrontabManager\CrontabRepository->readCrontab()
#2 /var/www/html/app/Console/Commands/InstallSchedulerCommand.php(23): TiBeN\CrontabManager\CrontabRepository->__construct()
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InstallSchedulerCommand->handle()
#4 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#5 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#6 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#9 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#11 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#12 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#13 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#14 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\Component\Console\Application->run()
#15 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(426): Illuminate\Console\Application->call()
#16 /var/www/html/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\Foundation\Console\Kernel->call()
#17 /var/www/html/app/Console/Commands/InitCommand.php(361): Illuminate\Support\Facades\Facade::__callStatic()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): App\Console\Commands\InitCommand::{closure:App\Console\Commands\InitCommand::tryInstallingScheduler():360}()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\Console\View\Components\Task->render()
#20 /var/www/html/app/Console/Commands/InitCommand.php(360): Illuminate\Console\View\Components\Factory->__call()
#21 /var/www/html/app/Console/Commands/InitCommand.php(62): App\Console\Commands\InitCommand->tryInstallingScheduler()
#22 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\InitCommand->handle()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\Container\BoundMethod::{closure:Illuminate\Container\BoundMethod::call():35}()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\Container\Util::unwrapIfClosure()
#25 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Container/Container.php(836): Illuminate\Container\BoundMethod::call()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call()
#28 /var/www/html/vendor/symfony/console/Command/Command.php(318): Illuminate\Console\Command->execute()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run()
#30 /var/www/html/vendor/symfony/console/Application.php(1110): Illuminate\Console\Command->run()
#31 /var/www/html/vendor/symfony/console/Application.php(359): Symfony\Component\Console\Application->doRunCommand()
#32 /var/www/html/vendor/symfony/console/Application.php(194): Symfony\Component\Console\Application->doRun()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(197): Symfony\Component\Console\Application->run()
#34 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate\Foundation\Console\Kernel->handle()
#35 /var/www/html/artisan(16): Illuminate\Foundation\Application->handleCommand()
#36 {main}❯ docker exec -it 6961e4de2e33a22042d3e03b819b70a6-koel-1 cat .env
DB_CONNECTION=pgsql
LANGUAGE=en_US:en
USER=www-data
FFMPEG_PATH=/usr/bin/ffmpeg
HOSTNAME=79c0ad39a3e4
DB_PORT=5432
OPTIMIZE_CONFIG=true
PHP_INI_DIR=/usr/local/etc/php
SHLVL=3
HOME=/var/www/
UMASK_SET=002
DB_DATABASE=koel
DB_USERNAME=koel
LOGNAME=www-data
STREAMING_METHOD=x-sendfile
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
LANG=en_US.UTF-8
SHELL=/bin/sh
UMASK=002
MEDIA_PATH=/music
LC_ALL=en_US.UTF-8
APP_KEY=exactly-32-characters-app-keyyyy
DB_PASSWORD=some-secret-password
PWD=/var/www/html
TZ=Etc/UTC
NVIDIA_VISIBLE_DEVICES=void
DB_HOST=postgres |
|
I can't really dig more into it. I have no idea about neither PHP or Laravel. Feel free to take it from here and do changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR makes corrections to the init script for POSIX shell compatibility and sets the PHP_INI_DIR environment variable that was previously undefined. However, it does not fully address issue #213 regarding running without a mounted .env file.
Changes:
- Changed bash-specific
[[conditionals to POSIX-compliant[in koel-init script - Fixed backtick syntax that would incorrectly execute OPTIMIZE_CONFIG as a command
- Added PHP_INI_DIR environment variable definition in Dockerfile
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| koel-init | Converted bash-specific syntax to POSIX-compliant shell syntax for sh compatibility and fixed string quoting |
| Dockerfile | Added PHP_INI_DIR environment variable and updated php.ini COPY command syntax |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| if [ ! -f /var/www/html/.env ]; then | ||
| echo "No .env file found in /var/www/html. Make sure to mount a .env file to store the configuration. You can use the koel:init command (see https://github.com/koel/docker#the-koelinit-command) for a guided setup." | ||
| echo "" | ||
| echo "See https://github.com/koel/koel/blob/master/.env.example for an example .env file." | ||
| exit 0 | ||
| fi |
Copilot
AI
Jan 27, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR claims to close issue #213, which reports that the container won't run koel:init when environment variables are passed via docker-compose environment section (without mounting a .env file). However, this check still exits the script with exit 0 when the .env file is not found, preventing koel:init from running. This doesn't address the core issue described in #213. The script should either remove this check entirely or allow the script to continue when environment variables are provided through other means (e.g., checking if required environment variables are set).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@stavros-k WDYT?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm all in to remove this, as it currently masks the fact that init does not work.
CI showed us that.
Closes #213
[[is abashsyntax, but shebang issh.OPTIMIZE_CONFIGwas wrapped in `, making it exectute it like it was a command.PHP_INI_DIR, is: