Browse Source

install yarn to fix: file_get_contents(/koel/public/mix-manifest.json): failed to open stream ...

Fabian Peter Hammerle 5 years ago
parent
commit
46c9b1987f
2 changed files with 30 additions and 61 deletions
  1. 12 9
      Dockerfile
  2. 18 52
      README.md

+ 12 - 9
Dockerfile

@@ -1,19 +1,24 @@
 FROM php:7.2-alpine
 
 # postgresql-dev: required for build of pgsql (includes libpq-fe.h)
-RUN apk add postgresql-dev
 # zlib-dev: required by zip module
-RUN apk add zlib-dev
+# yarn: called by artisan koel:init
+RUN apk add \
+    composer \
+    git \
+    postgresql-dev \
+    yarn \
+    zlib-dev
+
+# TODO check if pgsql may be removed
 RUN docker-php-ext-install -j$(nproc) \
     exif \
+    pdo_pgsql \
     pgsql \
     zip
 
-RUN apk add \
-    composer \
-    git
-
-RUN git clone --branch master https://github.com/phanan/koel /koel
+RUN git clone --branch master --recurse-submodules \
+    https://github.com/phanan/koel /koel
 WORKDIR /koel
 
 # In Encrypter.php line 43:
@@ -22,6 +27,4 @@ RUN sed 's/^APP_KEY=$/APP_KEY=WORKAROUND_000000000000000000000/' .env.example >.
 RUN composer install --no-interaction
 # TODO revert workaround
 
-RUN docker-php-ext-install pdo_pgsql
-
 CMD ["sh"]

+ 18 - 52
README.md

@@ -59,64 +59,30 @@ The absolute path to your media directory. If this is skipped (left blank) now,
  >
 
 Compiling front-end stuff
-sh: yarn: not found
+yarn install v1.7.0
+[1/4] Resolving packages...
+[2/4] Fetching packages...
+info fsevents@1.1.2: The platform "linux" is incompatible with this module.
+info "fsevents@1.1.2" is an optional dependency and failed compatibility check. Excluding it from installation.
+[3/4] Linking dependencies...
+warning " > @phanan/vuebus@1.0.0" has incorrect peer dependency "vue@^2.5.13".
+[4/4] Building fresh packages...
+$ yarn production
+yarn run v1.7.0
+$ cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
+...
+Done in 23.32s.
+Done in 77.88s.
 
 🎆  Success! Koel can now be run from localhost with `php artisan serve`.
+You can also scan for media with `php artisan koel:sync`.
 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
+PHP 7.2.10 Development Server started at Sat Sep 15 19:41:27 2018
+[Sat Sep 15 19:41:30 2018] 172.18.0.1:35448 [200]: /public/css/app.088d4f5eca71efdd5ffc.css
+...
 ```
-
-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