Browse Source

install module pdo_pgsql to fix 'driver not found' error;
now failing with "file_get_contents(/koel/public/mix-manifest.json): failed to open stream ..."

Fabian Peter Hammerle 5 years ago
parent
commit
390c2877dc
3 changed files with 99 additions and 74 deletions
  1. 3 0
      Dockerfile
  2. 96 22
      README.md
  3. 0 52
      driver-not-found-traceback.txt

+ 3 - 0
Dockerfile

@@ -20,5 +20,8 @@ WORKDIR /koel
 # The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths.
 RUN sed 's/^APP_KEY=$/APP_KEY=WORKAROUND_000000000000000000000/' .env.example >.env
 RUN composer install --no-interaction
+# TODO revert workaround
+
+RUN docker-php-ext-install pdo_pgsql
 
 CMD ["sh"]

+ 96 - 22
README.md

@@ -9,6 +9,10 @@ $ sudo docker run --rm --interactive --tty --network koel --publish=8000:8000 \
     --security-opt=no-new-privileges --cap-drop=all koel
 /koel # php artisan koel:init
 ...
+App key exists -- skipping
+...
+could not find driver
+
 Koel cannot connect to the database. Let's set it up.
 
  Your DB driver of choice [MySQL/MariaDB]:
@@ -19,30 +23,100 @@ Koel cannot connect to the database. Let's set it up.
  > pgsql
 
  DB host:
+ > koel-db
+
+ DB port (leave empty for default) []:
+ > 5432
+
+ DB name:
  > koel
 
- ...
+ DB user:
+ > koel
 
-could not find driver
-```
+ DB password []:
+ > secret
 
-[pgsql functions](https://secure.php.net/manual/en/ref.pgsql.php) succeed:
-```sh
-/tmp # php -a
-Interactive shell
-
-php > $c = pg_connect("host=koel-db port=5432 dbname=koel user=koel password=secret");
-php > var_dump(pg_fetch_all(pg_query('SELECT datname FROM pg_database WHERE datistemplate = false;')));
-array(2) {
-  [0]=>
-  array(1) {
-    ["datname"]=>
-    string(8) "postgres"
-  }
-  [1]=>
-  array(1) {
-    ["datname"]=>
-    string(4) "koel"
-  }
-}
+Migrating database
+Let's create the admin account.
+
+ Your name:
+ > Fabian Peter Hammerle
+
+ Your email address:
+ > fabian+koel@hammerle.me
+
+ Your desired password:
+ >
+
+ Again, just to make sure:
+ >
+
+Seeding initial data
+The absolute path to your media directory. If this is skipped (left blank) now, you can set it later via the web interface.
+
+ Media path []:
+ >
+
+Compiling front-end stuff
+sh: yarn: not found
+
+🎆  Success! Koel can now be run from localhost with `php artisan serve`.
+Again, for more configuration guidance, refer to
+📙  https://koel.phanan.net/docs
+or open the .env file in the root installation folder.
+Thanks for using Koel. You rock!
+
+/koel # php artisan serve --host=0.0.0.0
+Laravel development server started: <http://0.0.0.0:8000>
+PHP 7.2.10 Development Server started at Sat Sep 15 17:15:08 2018
 ```
+
+in browser:
+
+> ErrorException thrown with message "file_get_contents(/koel/public/mix-manifest.json): failed to open stream: No such file or directory (View: /koel/resources/views/index.blade.php)"
+>
+> Stacktrace:
+> #42 ErrorException in /koel/app/Application.php:43
+> #41 ErrorException in /koel/app/Application.php:43
+> #40 file_get_contents in /koel/app/Application.php:43
+> #39 App\Application:rev in /koel/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:223
+> #38 Illuminate\Support\Facades\Facade:__callStatic in /koel/storage/framework/views/7cf16e255af1fef3fe15fb702f8b95c431880e2f.php:21
+> #37 include in /koel/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:43
+> #36 Illuminate\View\Engines\PhpEngine:evaluatePath in /koel/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:59
+> #35 Illuminate\View\Engines\CompilerEngine:get in /koel/vendor/laravel/framework/src/Illuminate/View/View.php:142
+> #34 Illuminate\View\View:getContents in /koel/vendor/laravel/framework/src/Illuminate/View/View.php:125
+> #33 Illuminate\View\View:renderContents in /koel/vendor/laravel/framework/src/Illuminate/View/View.php:90
+> #32 Illuminate\View\View:render in /koel/vendor/laravel/framework/src/Illuminate/Http/Response.php:42
+> #31 Illuminate\Http\Response:setContent in /koel/vendor/symfony/http-foundation/Response.php:202
+> #30 Symfony\Component\HttpFoundation\Response:__construct in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:733
+> #29 Illuminate\Routing\Router:toResponse in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:705
+> #28 Illuminate\Routing\Router:prepareResponse in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:665
+> #27 Illuminate\Routing\Router:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
+> #26 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104
+> #25 Illuminate\Pipeline\Pipeline:then in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:667
+> #24 Illuminate\Routing\Router:runRouteWithinStack in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:642
+> #23 Illuminate\Routing\Router:runRoute in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:608
+> #22 Illuminate\Routing\Router:dispatchToRoute in /koel/vendor/laravel/framework/src/Illuminate/Routing/Router.php:597
+> #21 Illuminate\Routing\Router:dispatch in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176
+> #20 Illuminate\Foundation\Http\Kernel:Illuminate\Foundation\Http\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
+> #19 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:31
+> #18 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
+> #17 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
+> #16 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:31
+> #15 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
+> #14 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
+> #13 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27
+> #12 Illuminate\Foundation\Http\Middleware\ValidatePostSize:handle in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
+> #11 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
+> #10 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/app/Http/Middleware/UseDifferentConfigIfE2E.php:22
+> #9 App\Http\Middleware\UseDifferentConfigIfE2E:handle in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
+> #8 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
+> #7 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:62
+> #6 Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode:handle in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:151
+> #5 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
+> #4 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /koel/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104
+> #3 Illuminate\Pipeline\Pipeline:then in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
+> #2 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /koel/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116
+> #1 Illuminate\Foundation\Http\Kernel:handle in /koel/index.php:52
+> #0 require_once in /koel/server.php:19

+ 0 - 52
driver-not-found-traceback.txt

@@ -1,52 +0,0 @@
-PDOException: could not find driver in /koel/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:46
-Stack trace:
-#0 /koel/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(46): PDO->__construct('pgsql:host=kole...', 'wer', '', Array)
-#1 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(65): Doctrine\DBAL\Driver\PDOConnection->__construct('pgsql:host=kole...', 'wer', '', Array)
-#2 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\Database\Connectors\Connector->createPdoConnection('pgsql:host=kole...', 'wer', '', Array)
-#3 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/PostgresConnector.php(33): Illuminate\Database\Connectors\Connector->createConnection('pgsql:host=kole...', Array, Array)
-#4 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(182): Illuminate\Database\Connectors\PostgresConnector->connect(Array)
-#5 [internal function]: Illuminate\Database\Connectors\ConnectionFactory->Illuminate\Database\Connectors\{closure}()
-#6 /koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php(915): call_user_func(Object(Closure))
-#7 /koel/app/Console/Commands/InitCommand.php(215): Illuminate\Database\Connection->getPdo()
-#8 /koel/app/Console/Commands/InitCommand.php(54): App\Console\Commands\InitCommand->maybeSetUpDatabase()
-#9 [internal function]: App\Console\Commands\InitCommand->handle()
-#10 /koel/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array)
-#11 /koel/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
-#12 /koel/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): Illuminate\Container\BoundMethod::callBoundMethod(Object(App\Application), Array, Object(Closure))
-#13 /koel/vendor/laravel/framework/src/Illuminate/Container/Container.php(564): Illuminate\Container\BoundMethod::call(Object(App\Application), Array, Array, NULL)
-#14 /koel/vendor/laravel/framework/src/Illuminate/Console/Command.php(179): Illuminate\Container\Container->call(Array)
-#15 /koel/vendor/symfony/console/Command/Command.php(251): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
-#16 /koel/vendor/laravel/framework/src/Illuminate/Console/Command.php(166): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
-#17 /koel/vendor/symfony/console/Application.php(886): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#18 /koel/vendor/symfony/console/Application.php(262): Symfony\Component\Console\Application->doRunCommand(Object(App\Console\Commands\InitCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#19 /koel/vendor/symfony/console/Application.php(145): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#20 /koel/vendor/laravel/framework/src/Illuminate/Console/Application.php(89): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#21 /koel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(122): Illuminate\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#22 /koel/artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#23 {main}
-
-Next Doctrine\DBAL\Driver\PDOException: could not find driver in /koel/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:50
-Stack trace:
-#0 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(65): Doctrine\DBAL\Driver\PDOConnection->__construct('pgsql:host=kole...', 'wer', '', Array)
-#1 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\Database\Connectors\Connector->createPdoConnection('pgsql:host=kole...', 'wer', '', Array)
-#2 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/PostgresConnector.php(33): Illuminate\Database\Connectors\Connector->createConnection('pgsql:host=kole...', Array, Array)
-#3 /koel/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(182): Illuminate\Database\Connectors\PostgresConnector->connect(Array)
-#4 [internal function]: Illuminate\Database\Connectors\ConnectionFactory->Illuminate\Database\Connectors\{closure}()
-#5 /koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php(915): call_user_func(Object(Closure))
-#6 /koel/app/Console/Commands/InitCommand.php(215): Illuminate\Database\Connection->getPdo()
-#7 /koel/app/Console/Commands/InitCommand.php(54): App\Console\Commands\InitCommand->maybeSetUpDatabase()
-#8 [internal function]: App\Console\Commands\InitCommand->handle()
-#9 /koel/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array)
-#10 /koel/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
-#11 /koel/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): Illuminate\Container\BoundMethod::callBoundMethod(Object(App\Application), Array, Object(Closure))
-#12 /koel/vendor/laravel/framework/src/Illuminate/Container/Container.php(564): Illuminate\Container\BoundMethod::call(Object(App\Application), Array, Array, NULL)
-#13 /koel/vendor/laravel/framework/src/Illuminate/Console/Command.php(179): Illuminate\Container\Container->call(Array)
-#14 /koel/vendor/symfony/console/Command/Command.php(251): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
-#15 /koel/vendor/laravel/framework/src/Illuminate/Console/Command.php(166): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
-#16 /koel/vendor/symfony/console/Application.php(886): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#17 /koel/vendor/symfony/console/Application.php(262): Symfony\Component\Console\Application->doRunCommand(Object(App\Console\Commands\InitCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#18 /koel/vendor/symfony/console/Application.php(145): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#19 /koel/vendor/laravel/framework/src/Illuminate/Console/Application.php(89): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#20 /koel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(122): Illuminate\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#21 /koel/artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
-#22 {main